You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mahout.apache.org by gi...@apache.org on 2021/02/02 19:56:59 UTC

[mahout] branch asf-site updated: Automatic Site Publish by Buildbot

This is an automated email from the ASF dual-hosted git repository.

github-bot pushed a commit to branch asf-site
in repository https://gitbox.apache.org/repos/asf/mahout.git


The following commit(s) were added to refs/heads/asf-site by this push:
     new 6659aaa  Automatic Site Publish by Buildbot
6659aaa is described below

commit 6659aaa1cacfc1aa0aef23a4d09e0dc9c72d4fe0
Author: GitHub Actions Bot <>
AuthorDate: Tue Feb 2 19:56:48 2021 +0000

    Automatic Site Publish by Buildbot
---
 LICENSE                                            |   346 -
 NOTICE                                             |    41 -
 buildtools/Eclipse-Lucene-Codestyle.xml            |   883 -
 buildtools/MahoutCleanUp.xml                       |    67 -
 buildtools/addcheckstyle.xsl                       |    54 -
 buildtools/apache-header.txt                       |    16 -
 buildtools/change-scala-version.sh                 |    80 -
 buildtools/clover.license                          |     7 -
 buildtools/codetemplates.xml                       |    61 -
 buildtools/cross_compile.sh                        |   127 -
 buildtools/pom.xml                                 |   153 -
 buildtools/setup-eclipse-workspace.xml             |    90 -
 buildtools/src/main/resources/findbugs-exclude.xml |    81 -
 .../resources/mahout-checkstyle-suppressions.xml   |    34 -
 .../src/main/resources/mahout-checkstyle.xml       |   217 -
 .../src/main/resources/mahout-eclipse-checkstyle   |    27 -
 buildtools/src/main/resources/mahout-eclipse-pmd   |    23 -
 .../src/main/resources/mahout-pmd-ruleset.xml      |   189 -
 buildtools/src/test/resources/jaas.config          |    19 -
 buildtools/src/test/resources/java.policy          |   134 -
 buildtools/template.checkstyle-config.xml          |    23 -
 buildtools/xmltemplates.xml                        |    38 -
 community/community-engines/flink-batch/pom.xml    |   188 -
 .../src/main/resources/log4j.properties            |    27 -
 .../mahout/flinkbindings/FlinkByteBCast.scala      |    90 -
 .../flinkbindings/FlinkDistributedContext.scala    |    50 -
 .../apache/mahout/flinkbindings/FlinkEngine.scala  |   416 -
 .../mahout/flinkbindings/blas/FlinkOpAewB.scala    |    76 -
 .../flinkbindings/blas/FlinkOpAewScalar.scala      |   106 -
 .../mahout/flinkbindings/blas/FlinkOpAt.scala      |    72 -
 .../mahout/flinkbindings/blas/FlinkOpAtA.scala     |   222 -
 .../mahout/flinkbindings/blas/FlinkOpAtB.scala     |    88 -
 .../mahout/flinkbindings/blas/FlinkOpAx.scala      |    96 -
 .../mahout/flinkbindings/blas/FlinkOpCBind.scala   |   117 -
 .../flinkbindings/blas/FlinkOpMapBlock.scala       |    47 -
 .../mahout/flinkbindings/blas/FlinkOpRBind.scala   |    41 -
 .../flinkbindings/blas/FlinkOpRowRange.scala       |    46 -
 .../blas/FlinkOpTimesRightMatrix.scala             |    81 -
 .../apache/mahout/flinkbindings/blas/package.scala |   125 -
 .../flinkbindings/drm/CheckpointedFlinkDrm.scala   |   302 -
 .../drm/CheckpointedFlinkDrmOps.scala              |    34 -
 .../apache/mahout/flinkbindings/drm/FlinkDrm.scala |   108 -
 .../mahout/flinkbindings/io/DrmMetadata.scala      |    71 -
 .../mahout/flinkbindings/io/HDFSPathSearch.scala   |    83 -
 .../apache/mahout/flinkbindings/io/HDFSUtil.scala  |    33 -
 .../mahout/flinkbindings/io/Hadoop2HDFSUtil.scala  |    83 -
 .../org/apache/mahout/flinkbindings/package.scala  |   114 -
 .../flinkbindings/DistributedFlinkSuite.scala      |    74 -
 .../mahout/flinkbindings/DrmLikeOpsSuite.scala     |    93 -
 .../mahout/flinkbindings/FlinkByteBCastSuite.scala |    38 -
 .../mahout/flinkbindings/RLikeOpsSuite.scala       |   326 -
 .../mahout/flinkbindings/UseCasesSuite.scala       |   141 -
 .../mahout/flinkbindings/blas/LATestSuite.scala    |   211 -
 .../flinkbindings/examples/ReadCsvExample.scala    |    39 -
 .../flinkbindings/standard/ClusteringSuite.scala   |    26 -
 .../flinkbindings/standard/DrmLikeOpsSuite.scala   |    28 -
 .../flinkbindings/standard/DrmLikeSuite.scala      |    28 -
 .../FlinkDistributedDecompositionsSuite.scala      |   221 -
 .../standard/NaiveBayesTestSuite.scala             |    29 -
 .../flinkbindings/standard/PreprocessorSuite.scala |    26 -
 .../flinkbindings/standard/RLikeDrmOpsSuite.scala  |    28 -
 .../flinkbindings/standard/RegressionSuite.scala   |    27 -
 .../standard/RegressionTestsSuite.scala            |    26 -
 community/community-engines/h2o/README.md          |    74 -
 community/community-engines/h2o/pom.xml            |   177 -
 .../h2o/src/main/assembly/dependency-reduced.xml   |    44 -
 .../apache/mahout/h2obindings/H2OBlockMatrix.java  |   134 -
 .../org/apache/mahout/h2obindings/H2OContext.java  |    38 -
 .../org/apache/mahout/h2obindings/H2OHdfs.java     |   245 -
 .../org/apache/mahout/h2obindings/H2OHelper.java   |   472 -
 .../apache/mahout/h2obindings/drm/H2OBCast.java    |   133 -
 .../org/apache/mahout/h2obindings/drm/H2ODrm.java  |    47 -
 .../org/apache/mahout/h2obindings/ops/ABt.java     |    70 -
 .../org/apache/mahout/h2obindings/ops/AewB.java    |    84 -
 .../apache/mahout/h2obindings/ops/AewScalar.java   |    78 -
 .../apache/mahout/h2obindings/ops/AewUnary.java    |    88 -
 .../java/org/apache/mahout/h2obindings/ops/At.java |    63 -
 .../org/apache/mahout/h2obindings/ops/AtA.java     |    69 -
 .../org/apache/mahout/h2obindings/ops/AtB.java     |    73 -
 .../org/apache/mahout/h2obindings/ops/Atx.java     |    81 -
 .../java/org/apache/mahout/h2obindings/ops/Ax.java |    68 -
 .../org/apache/mahout/h2obindings/ops/Cbind.java   |   103 -
 .../apache/mahout/h2obindings/ops/CbindScalar.java |    53 -
 .../apache/mahout/h2obindings/ops/MapBlock.java    |   122 -
 .../org/apache/mahout/h2obindings/ops/Par.java     |    93 -
 .../org/apache/mahout/h2obindings/ops/Rbind.java   |    90 -
 .../apache/mahout/h2obindings/ops/RowRange.java    |    95 -
 .../mahout/h2obindings/ops/TimesRightMatrix.java   |   105 -
 .../org/apache/mahout/h2o/common/DrmMetadata.scala |    72 -
 .../org/apache/mahout/h2o/common/HDFSUtil.scala    |    26 -
 .../apache/mahout/h2o/common/Hadoop2HDFSUtil.scala |    63 -
 .../mahout/h2obindings/H2ODistributedContext.scala |    28 -
 .../org/apache/mahout/h2obindings/H2OEngine.scala  |   190 -
 .../h2obindings/drm/CheckpointedDrmH2O.scala       |    84 -
 .../mahout/h2obindings/ops/MapBlockHelper.scala    |    60 -
 .../org/apache/mahout/h2obindings/package.scala    |    24 -
 .../classifier/naivebayes/NBH2OTestSuite.scala     |    23 -
 .../stats/ClassifierStatsH2OTestSuite.scala        |    26 -
 .../mahout/h2obindings/drm/DrmLikeOpsSuite.scala   |    25 -
 .../mahout/h2obindings/drm/DrmLikeSuite.scala      |    25 -
 .../mahout/h2obindings/drm/RLikeDrmOpsSuite.scala  |    28 -
 .../apache/mahout/h2obindings/ops/ABtSuite.scala   |    45 -
 .../apache/mahout/h2obindings/ops/AewBSuite.scala  |    84 -
 .../apache/mahout/h2obindings/ops/AtASuite.scala   |    43 -
 .../apache/mahout/h2obindings/ops/AtSuite.scala    |    41 -
 .../h2obindings/test/DistributedH2OSuite.scala     |    45 -
 .../h2obindings/test/LoggerConfiguration.scala     |    29 -
 .../mahout/math/algorithms/ClusteringSuite.scala   |    25 -
 .../mahout/math/algorithms/PreprocessorSuite.scala |    24 -
 .../mahout/math/algorithms/RegressionSuite.scala   |    25 -
 .../math/algorithms/RegressionTestsSuite.scala     |    24 -
 .../DistributedDecompositionsSuite.scala           |    23 -
 community/community-engines/pom.xml                |    41 -
 community/mahout-mr/bin/mahout                     |   395 -
 community/mahout-mr/bin/mahout.cmd                 |   397 -
 community/mahout-mr/conf/arff.vector.props         |    28 -
 community/mahout-mr/conf/canopy.props              |    33 -
 community/mahout-mr/conf/cat.props                 |    23 -
 community/mahout-mr/conf/cleansvd.props            |    22 -
 community/mahout-mr/conf/clusterdump.props         |    19 -
 community/mahout-mr/conf/clusterpp.props           |    22 -
 .../mahout-mr/conf/driver.classes.default.props    |    88 -
 .../mahout-mr/conf/evaluateFactorization.props     |    19 -
 .../conf/evaluateFactorizationParallel.props       |    19 -
 community/mahout-mr/conf/fkmeans.props             |    36 -
 community/mahout-mr/conf/flink-config.yaml         |    67 -
 community/mahout-mr/conf/itemsimilarity.props      |    28 -
 community/mahout-mr/conf/kmeans.props              |    32 -
 community/mahout-mr/conf/log4j.xml                 |    32 -
 community/mahout-mr/conf/lucene.vector.props       |    19 -
 community/mahout-mr/conf/matrixmult.props          |    25 -
 community/mahout-mr/conf/parallelALS.props         |    19 -
 .../mahout-mr/conf/predictFromFactorization.props  |    19 -
 community/mahout-mr/conf/recommendfactorized.props |    19 -
 community/mahout-mr/conf/recommenditembased.props  |    33 -
 community/mahout-mr/conf/rowid.props               |    21 -
 community/mahout-mr/conf/rowsimilarity.props       |    27 -
 community/mahout-mr/conf/runlogistic.props         |    19 -
 community/mahout-mr/conf/seq2sparse.props          |    34 -
 community/mahout-mr/conf/seqdirectory.props        |    22 -
 community/mahout-mr/conf/seqdumper.props           |    19 -
 community/mahout-mr/conf/seqwiki.props             |    19 -
 community/mahout-mr/conf/splitDataset.props        |    19 -
 community/mahout-mr/conf/ssvd.props                |    33 -
 community/mahout-mr/conf/svd.props                 |    25 -
 community/mahout-mr/conf/trainlogistic.props       |    21 -
 community/mahout-mr/conf/transpose.props           |    21 -
 community/mahout-mr/conf/vectordump.props          |    20 -
 .../integration/bin/prep_asf_mail_archives.sh      |   106 -
 community/mahout-mr/integration/pom.xml            |   156 -
 .../apache/mahout/benchmark/BenchmarkRunner.java   |   111 -
 .../apache/mahout/benchmark/CloneBenchmark.java    |    62 -
 .../mahout/benchmark/ClosestCentroidBenchmark.java |    98 -
 .../apache/mahout/benchmark/DistanceBenchmark.java |   104 -
 .../org/apache/mahout/benchmark/DotBenchmark.java  |   191 -
 .../apache/mahout/benchmark/MinusBenchmark.java    |   115 -
 .../org/apache/mahout/benchmark/PlusBenchmark.java |   115 -
 .../mahout/benchmark/SerializationBenchmark.java   |   124 -
 .../apache/mahout/benchmark/TimesBenchmark.java    |   115 -
 .../apache/mahout/benchmark/VectorBenchmarks.java  |   497 -
 .../impl/model/cassandra/CassandraDataModel.java   |   465 -
 .../cf/taste/impl/model/hbase/HBaseDataModel.java  |   497 -
 .../jdbc/AbstractBooleanPrefJDBCDataModel.java     |   137 -
 .../impl/model/jdbc/AbstractJDBCDataModel.java     |   787 -
 .../impl/model/jdbc/ConnectionPoolDataSource.java  |   122 -
 .../impl/model/jdbc/GenericJDBCDataModel.java      |   146 -
 .../model/jdbc/MySQLBooleanPrefJDBCDataModel.java  |   161 -
 .../taste/impl/model/jdbc/MySQLJDBCDataModel.java  |   247 -
 .../jdbc/PostgreSQLBooleanPrefJDBCDataModel.java   |   146 -
 .../impl/model/jdbc/PostgreSQLJDBCDataModel.java   |   172 -
 .../impl/model/jdbc/ReloadFromJDBCDataModel.java   |   178 -
 .../model/jdbc/SQL92BooleanPrefJDBCDataModel.java  |   221 -
 .../taste/impl/model/jdbc/SQL92JDBCDataModel.java  |   248 -
 .../taste/impl/model/mongodb/MongoDBDataModel.java |   873 -
 .../jdbc/AbstractJDBCInMemoryItemSimilarity.java   |   132 -
 .../jdbc/AbstractJDBCItemSimilarity.java           |   213 -
 .../jdbc/MySQLJDBCInMemoryItemSimilarity.java      |    47 -
 .../similarity/jdbc/MySQLJDBCItemSimilarity.java   |   103 -
 .../jdbc/SQL92JDBCInMemoryItemSimilarity.java      |    51 -
 .../similarity/jdbc/SQL92JDBCItemSimilarity.java   |    57 -
 .../mahout/cf/taste/web/RecommenderServlet.java    |   215 -
 .../mahout/cf/taste/web/RecommenderSingleton.java  |    57 -
 .../mahout/cf/taste/web/RecommenderWrapper.java    |   126 -
 .../mahout/classifier/ConfusionMatrixDumper.java   |   425 -
 .../mahout/clustering/cdbw/CDbwEvaluator.java      |   387 -
 .../mahout/clustering/conversion/InputDriver.java  |   114 -
 .../mahout/clustering/conversion/InputMapper.java  |    81 -
 .../clustering/evaluation/ClusterEvaluator.java    |   196 -
 .../evaluation/RepresentativePointsDriver.java     |   243 -
 .../evaluation/RepresentativePointsMapper.java     |   117 -
 .../evaluation/RepresentativePointsReducer.java    |    70 -
 .../mahout/clustering/lda/LDAPrintTopics.java      |   229 -
 .../text/MailArchivesClusteringAnalyzer.java       |   160 -
 .../mahout/text/MultipleTextFileInputFormat.java   |    46 -
 .../apache/mahout/text/PrefixAdditionFilter.java   |    67 -
 .../mahout/text/SequenceFilesFromDirectory.java    |   214 -
 .../text/SequenceFilesFromDirectoryFilter.java     |    99 -
 .../text/SequenceFilesFromDirectoryMapper.java     |    61 -
 .../mahout/text/SequenceFilesFromMailArchives.java |   369 -
 .../text/SequenceFilesFromMailArchivesMapper.java  |   244 -
 .../mahout/text/TextParagraphSplittingJob.java     |    73 -
 .../apache/mahout/text/WholeFileRecordReader.java  |   125 -
 .../mahout/text/WikipediaToSequenceFile.java       |   210 -
 .../mahout/text/wikipedia/WikipediaAnalyzer.java   |    50 -
 .../wikipedia/WikipediaDatasetCreatorDriver.java   |   190 -
 .../wikipedia/WikipediaDatasetCreatorMapper.java   |   142 -
 .../wikipedia/WikipediaDatasetCreatorReducer.java  |    38 -
 .../mahout/text/wikipedia/WikipediaMapper.java     |   179 -
 .../text/wikipedia/WikipediaXmlSplitter.java       |   234 -
 .../mahout/text/wikipedia/XmlInputFormat.java      |   164 -
 .../main/java/org/apache/mahout/utils/Bump125.java |    62 -
 .../java/org/apache/mahout/utils/MatrixDumper.java |   138 -
 .../apache/mahout/utils/SequenceFileDumper.java    |   168 -
 .../java/org/apache/mahout/utils/SplitInput.java   |   673 -
 .../org/apache/mahout/utils/SplitInputJob.java     |   213 -
 .../utils/clustering/AbstractClusterWriter.java    |   160 -
 .../mahout/utils/clustering/CSVClusterWriter.java  |    69 -
 .../mahout/utils/clustering/ClusterDumper.java     |   328 -
 .../utils/clustering/ClusterDumperWriter.java      |   100 -
 .../mahout/utils/clustering/ClusterWriter.java     |    53 -
 .../utils/clustering/GraphMLClusterWriter.java     |   216 -
 .../mahout/utils/clustering/JsonClusterWriter.java |   188 -
 .../org/apache/mahout/utils/email/MailOptions.java |   186 -
 .../apache/mahout/utils/email/MailProcessor.java   |   183 -
 .../org/apache/mahout/utils/io/ChunkedWrapper.java |    42 -
 .../org/apache/mahout/utils/io/ChunkedWriter.java  |    86 -
 .../apache/mahout/utils/io/IOWriterWrapper.java    |    45 -
 .../org/apache/mahout/utils/io/WrappedWriter.java  |    31 -
 .../nlp/collocations/llr/BloomTokenFilter.java     |    78 -
 .../mahout/utils/regex/AnalyzerTransformer.java    |    75 -
 .../mahout/utils/regex/ChainTransformer.java       |    55 -
 .../apache/mahout/utils/regex/FPGFormatter.java    |    34 -
 .../mahout/utils/regex/IdentityFormatter.java      |    26 -
 .../mahout/utils/regex/IdentityTransformer.java    |    30 -
 .../mahout/utils/regex/RegexConverterDriver.java   |   101 -
 .../apache/mahout/utils/regex/RegexFormatter.java  |    24 -
 .../org/apache/mahout/utils/regex/RegexMapper.java |    80 -
 .../mahout/utils/regex/RegexTransformer.java       |    27 -
 .../org/apache/mahout/utils/regex/RegexUtils.java  |    69 -
 .../mahout/utils/regex/URLDecodeTransformer.java   |    43 -
 .../org/apache/mahout/utils/vectors/RowIdJob.java  |    99 -
 .../org/apache/mahout/utils/vectors/TermEntry.java |    46 -
 .../org/apache/mahout/utils/vectors/TermInfo.java  |    33 -
 .../apache/mahout/utils/vectors/VectorDumper.java  |   266 -
 .../apache/mahout/utils/vectors/VectorHelper.java  |   251 -
 .../mahout/utils/vectors/arff/ARFFIterator.java    |   144 -
 .../mahout/utils/vectors/arff/ARFFModel.java       |    76 -
 .../apache/mahout/utils/vectors/arff/ARFFType.java |    62 -
 .../utils/vectors/arff/ARFFVectorIterable.java     |   155 -
 .../apache/mahout/utils/vectors/arff/Driver.java   |   263 -
 .../utils/vectors/arff/MapBackedARFFModel.java     |   282 -
 .../utils/vectors/csv/CSVVectorIterator.java       |    69 -
 .../utils/vectors/io/DelimitedTermInfoWriter.java  |    73 -
 .../utils/vectors/io/SequenceFileVectorWriter.java |    75 -
 .../mahout/utils/vectors/io/TermInfoWriter.java    |    29 -
 .../utils/vectors/io/TextualVectorWriter.java      |    70 -
 .../mahout/utils/vectors/io/VectorWriter.java      |    52 -
 .../vectors/lucene/AbstractLuceneIterator.java     |   140 -
 .../utils/vectors/lucene/CachedTermInfo.java       |    76 -
 .../mahout/utils/vectors/lucene/ClusterLabels.java |   375 -
 .../apache/mahout/utils/vectors/lucene/Driver.java |   349 -
 .../utils/vectors/lucene/LuceneIterable.java       |    80 -
 .../utils/vectors/lucene/LuceneIterator.java       |    99 -
 .../mahout/utils/vectors/lucene/TFDFMapper.java    |    64 -
 .../utils/vectors/lucene/TermInfoClusterInOut.java |    81 -
 .../jdbc/MySQLJDBCInMemoryItemSimilarityTest.java  |    79 -
 .../mahout/clustering/TestClusterDumper.java       |   236 -
 .../mahout/clustering/TestClusterEvaluator.java    |   321 -
 .../mahout/clustering/cdbw/TestCDbwEvaluator.java  |   326 -
 .../text/MailArchivesClusteringAnalyzerTest.java   |    66 -
 .../text/SequenceFilesFromMailArchivesTest.java    |   240 -
 .../org/apache/mahout/text/TestPathFilter.java     |    32 -
 .../text/TestSequenceFilesFromDirectory.java       |   313 -
 .../mahout/text/doc/MultipleFieldsDocument.java    |    58 -
 .../mahout/text/doc/NumericFieldDocument.java      |    47 -
 .../mahout/text/doc/SingleFieldDocument.java       |    63 -
 .../org/apache/mahout/text/doc/TestDocument.java   |    29 -
 .../mahout/text/doc/UnstoredFieldsDocument.java    |    43 -
 .../java/org/apache/mahout/utils/Bump125Test.java  |    42 -
 .../org/apache/mahout/utils/SplitInputTest.java    |   418 -
 .../mahout/utils/email/MailProcessorTest.java      |    72 -
 .../nlp/collocations/llr/BloomTokenFilterTest.java |   154 -
 .../apache/mahout/utils/regex/RegexMapperTest.java |   104 -
 .../apache/mahout/utils/regex/RegexUtilsTest.java  |    61 -
 .../mahout/utils/vectors/RandomVectorIterable.java |    73 -
 .../mahout/utils/vectors/VectorHelperTest.java     |   140 -
 .../mahout/utils/vectors/arff/ARFFTypeTest.java    |    36 -
 .../utils/vectors/arff/ARFFVectorIterableTest.java |   289 -
 .../mahout/utils/vectors/arff/DriverTest.java      |    56 -
 .../utils/vectors/arff/MapBackedARFFModelTest.java |    61 -
 .../utils/vectors/csv/CSVVectorIteratorTest.java   |    57 -
 .../mahout/utils/vectors/io/VectorWriterTest.java  |    67 -
 .../utils/vectors/lucene/CachedTermInfoTest.java   |   121 -
 .../mahout/utils/vectors/lucene/DriverTest.java    |   137 -
 .../utils/vectors/lucene/LuceneIterableTest.java   |   195 -
 .../integration/src/test/resources/date.arff       |    18 -
 .../test/resources/expected-arff-dictionary-2.csv  |    22 -
 .../test/resources/expected-arff-dictionary.csv    |    22 -
 .../src/test/resources/expected-arff-schema-2.json |     1 -
 .../src/test/resources/expected-arff-schema.json   |     1 -
 .../src/test/resources/non-numeric-1.arff          |    24 -
 .../src/test/resources/non-numeric-2.arff          |    24 -
 .../integration/src/test/resources/quoted-id.arff  |     9 -
 .../src/test/resources/sample-dense.arff           |    20 -
 .../src/test/resources/sample-sparse.arff          |    24 -
 .../integration/src/test/resources/sample.arff     |    11 -
 .../integration/src/test/resources/test.mbox       |  1038 -
 community/mahout-mr/mr-examples/bin/README.txt     |    13 -
 .../mr-examples/bin/classify-20newsgroups.sh       |   197 -
 .../mr-examples/bin/classify-wikipedia.sh          |   196 -
 .../mahout-mr/mr-examples/bin/cluster-reuters.sh   |   203 -
 .../mr-examples/bin/cluster-syntheticcontrol.sh    |   105 -
 .../mr-examples/bin/factorize-movielens-1M.sh      |    85 -
 .../mahout-mr/mr-examples/bin/factorize-netflix.sh |    90 -
 .../mahout-mr/mr-examples/bin/get-all-examples.sh  |    36 -
 community/mahout-mr/mr-examples/bin/lda.algorithm  |    45 -
 .../mr-examples/bin/resources/bank-full.csv        | 45212 ----------
 .../mr-examples/bin/resources/country.txt          |   229 -
 .../mr-examples/bin/resources/country10.txt        |    10 -
 .../mr-examples/bin/resources/country2.txt         |     2 -
 .../mr-examples/bin/resources/donut-test.csv       |    41 -
 .../mahout-mr/mr-examples/bin/resources/donut.csv  |    41 -
 .../mr-examples/bin/resources/test-data.csv        |    61 -
 .../mahout-mr/mr-examples/bin/set-dfs-commands.sh  |    54 -
 community/mahout-mr/mr-examples/pom.xml            |   127 -
 .../mr-examples/src/main/assembly/job.xml          |    46 -
 .../mahout/cf/taste/example/TasteOptionParser.java |    75 -
 .../BookCrossingBooleanRecommender.java            |   102 -
 .../BookCrossingBooleanRecommenderBuilder.java     |    32 -
 ...kCrossingBooleanRecommenderEvaluatorRunner.java |    59 -
 .../bookcrossing/BookCrossingDataModel.java        |    99 -
 .../bookcrossing/BookCrossingDataModelBuilder.java |    33 -
 .../bookcrossing/BookCrossingRecommender.java      |   101 -
 .../BookCrossingRecommenderBuilder.java            |    32 -
 .../BookCrossingRecommenderEvaluatorRunner.java    |    54 -
 .../mahout/cf/taste/example/bookcrossing/README    |     9 -
 .../cf/taste/example/email/EmailUtility.java       |   104 -
 .../example/email/FromEmailToDictionaryMapper.java |    61 -
 .../example/email/MailToDictionaryReducer.java     |    43 -
 .../cf/taste/example/email/MailToPrefsDriver.java  |   274 -
 .../cf/taste/example/email/MailToRecMapper.java    |   101 -
 .../cf/taste/example/email/MailToRecReducer.java   |    53 -
 .../example/email/MsgIdToDictionaryMapper.java     |    49 -
 .../cf/taste/example/kddcup/DataFileIterable.java  |    44 -
 .../cf/taste/example/kddcup/DataFileIterator.java  |   158 -
 .../cf/taste/example/kddcup/KDDCupDataModel.java   |   231 -
 .../mahout/cf/taste/example/kddcup/ToCSV.java      |    77 -
 .../example/kddcup/track1/EstimateConverter.java   |    43 -
 .../example/kddcup/track1/Track1Callable.java      |    67 -
 .../example/kddcup/track1/Track1Recommender.java   |    94 -
 .../kddcup/track1/Track1RecommenderBuilder.java    |    32 -
 .../kddcup/track1/Track1RecommenderEvaluator.java  |   108 -
 .../track1/Track1RecommenderEvaluatorRunner.java   |    56 -
 .../taste/example/kddcup/track1/Track1Runner.java  |    95 -
 .../svd/DataModelFactorizablePreferences.java      |   107 -
 .../kddcup/track1/svd/FactorizablePreferences.java |    44 -
 .../track1/svd/KDDCupFactorizablePreferences.java  |   123 -
 .../track1/svd/ParallelArraysSGDFactorizer.java    |   265 -
 .../example/kddcup/track1/svd/Track1SVDRunner.java |   141 -
 .../example/kddcup/track2/HybridSimilarity.java    |    62 -
 .../example/kddcup/track2/Track2Callable.java      |   106 -
 .../example/kddcup/track2/Track2Recommender.java   |   100 -
 .../kddcup/track2/Track2RecommenderBuilder.java    |    33 -
 .../taste/example/kddcup/track2/Track2Runner.java  |   100 -
 .../cf/taste/example/kddcup/track2/TrackData.java  |    71 -
 .../example/kddcup/track2/TrackItemSimilarity.java |   106 -
 .../cf/taste/example/kddcup/track2/UserResult.java |    54 -
 .../als/netflix/NetflixDatasetConverter.java       |   140 -
 .../example/BatchItemSimilaritiesGroupLens.java    |    65 -
 .../precompute/example/GroupLensDataModel.java     |    96 -
 .../apache/mahout/classifier/NewsgroupHelper.java  |   128 -
 .../mahout/classifier/email/PrepEmailMapper.java   |    65 -
 .../mahout/classifier/email/PrepEmailReducer.java  |    47 -
 .../classifier/email/PrepEmailVectorsDriver.java   |    76 -
 .../classifier/sequencelearning/hmm/PosTagger.java |   277 -
 .../sgd/AdaptiveLogisticModelParameters.java       |   236 -
 .../classifier/sgd/LogisticModelParameters.java    |   265 -
 .../mahout/classifier/sgd/PrintResourceOrFile.java |    42 -
 .../mahout/classifier/sgd/RunAdaptiveLogistic.java |   197 -
 .../apache/mahout/classifier/sgd/RunLogistic.java  |   163 -
 .../apache/mahout/classifier/sgd/SGDHelper.java    |   151 -
 .../org/apache/mahout/classifier/sgd/SGDInfo.java  |    59 -
 .../mahout/classifier/sgd/SimpleCsvExamples.java   |   283 -
 .../apache/mahout/classifier/sgd/TestASFEmail.java |   152 -
 .../mahout/classifier/sgd/TestNewsGroups.java      |   141 -
 .../mahout/classifier/sgd/TrainASFEmail.java       |   137 -
 .../classifier/sgd/TrainAdaptiveLogistic.java      |   377 -
 .../mahout/classifier/sgd/TrainLogistic.java       |   311 -
 .../mahout/classifier/sgd/TrainNewsGroups.java     |   154 -
 .../classifier/sgd/ValidateAdaptiveLogistic.java   |   218 -
 .../BankMarketingClassificationMain.java           |    70 -
 .../sgd/bankmarketing/TelephoneCall.java           |   104 -
 .../sgd/bankmarketing/TelephoneCallParser.java     |    66 -
 .../mahout/clustering/display/ClustersFilter.java  |    31 -
 .../mahout/clustering/display/DisplayCanopy.java   |    88 -
 .../clustering/display/DisplayClustering.java      |   374 -
 .../clustering/display/DisplayFuzzyKMeans.java     |   110 -
 .../mahout/clustering/display/DisplayKMeans.java   |   106 -
 .../clustering/display/DisplaySpectralKMeans.java  |    85 -
 .../apache/mahout/clustering/display/README.txt    |    22 -
 .../streaming/tools/ClusterQualitySummarizer.java  |   279 -
 .../mahout/clustering/streaming/tools/IOUtils.java |    80 -
 .../clustering/syntheticcontrol/canopy/Job.java    |   125 -
 .../syntheticcontrol/fuzzykmeans/Job.java          |   144 -
 .../clustering/syntheticcontrol/kmeans/Job.java    |   187 -
 .../mahout/fpm/pfpgrowth/DeliciousTagsExample.java |    94 -
 .../dataset/KeyBasedStringTupleCombiner.java       |    40 -
 .../dataset/KeyBasedStringTupleGrouper.java        |    77 -
 .../dataset/KeyBasedStringTupleMapper.java         |    90 -
 .../dataset/KeyBasedStringTupleReducer.java        |    74 -
 .../mr-examples/src/main/resources/bank-full.csv   | 45212 ----------
 .../src/main/resources/cf-data-purchase.txt        |     7 -
 .../src/main/resources/cf-data-view.txt            |    12 -
 .../mr-examples/src/main/resources/donut-test.csv  |    41 -
 .../mr-examples/src/main/resources/donut.csv       |    41 -
 .../mr-examples/src/main/resources/test-data.csv   |    61 -
 .../sgd/LogisticModelParametersTest.java           |    43 -
 .../mahout/classifier/sgd/ModelDissectorTest.java  |    40 -
 .../mahout/classifier/sgd/TrainLogisticTest.java   |   167 -
 .../clustering/display/ClustersFilterTest.java     |    75 -
 .../org/apache/mahout/examples/MahoutTestCase.java |    30 -
 .../mr-examples/src/test/resources/country.txt     |   229 -
 .../mr-examples/src/test/resources/country10.txt   |    10 -
 .../mr-examples/src/test/resources/country2.txt    |     2 -
 .../mr-examples/src/test/resources/subjects.txt    |     2 -
 .../mr-examples/src/test/resources/wdbc.infos      |    32 -
 .../mr-examples/src/test/resources/wdbc/wdbc.data  |   569 -
 community/mahout-mr/mr/pom.xml                     |   193 -
 .../src/appended-resources/supplemental-models.xml |   279 -
 .../mahout-mr/mr/src/images/logos/favicon.ico      |   Bin 28838 -> 0 bytes
 .../mahout-mr/mr/src/images/logos/favicon128.png   |   Bin 5259 -> 0 bytes
 .../mahout-mr/mr/src/images/logos/favicon16.png    |   Bin 1009 -> 0 bytes
 .../mahout-mr/mr/src/images/logos/favicon32.png    |   Bin 1847 -> 0 bytes
 .../mahout-mr/mr/src/images/logos/favicon64.png    |   Bin 3148 -> 0 bytes
 .../mr/src/images/logos/mahout-logo-100.png        |   Bin 19477 -> 0 bytes
 .../mr/src/images/logos/mahout-logo-200.png        |   Bin 46360 -> 0 bytes
 .../mr/src/images/logos/mahout-logo-300.png        |   Bin 70139 -> 0 bytes
 .../mr/src/images/logos/mahout-logo-400.png        |   Bin 55468 -> 0 bytes
 .../src/images/logos/mahout-logo-poweredby-100.png |   Bin 24623 -> 0 bytes
 .../src/images/logos/mahout-logo-poweredby-55.png  |   Bin 11684 -> 0 bytes
 .../images/logos/mahout-logo-transparent-400.png   |   Bin 61970 -> 0 bytes
 .../mahout-mr/mr/src/images/logos/mahout-logo.svg  |   643 -
 .../mr/src/images/logos/mahout-powered.svg         |   646 -
 community/mahout-mr/mr/src/main/assembly/job.xml   |    61 -
 community/mahout-mr/mr/src/main/assembly/src.xml   |    64 -
 .../src/main/java/org/apache/mahout/Version.java   |    41 -
 .../cf/taste/common/NoSuchItemException.java       |    32 -
 .../cf/taste/common/NoSuchUserException.java       |    32 -
 .../apache/mahout/cf/taste/common/Refreshable.java |    53 -
 .../mahout/cf/taste/common/TasteException.java     |    41 -
 .../apache/mahout/cf/taste/common/Weighting.java   |    31 -
 .../mahout/cf/taste/eval/DataModelBuilder.java     |    45 -
 .../apache/mahout/cf/taste/eval/IRStatistics.java  |    80 -
 .../mahout/cf/taste/eval/RecommenderBuilder.java   |    45 -
 .../mahout/cf/taste/eval/RecommenderEvaluator.java |   105 -
 .../cf/taste/eval/RecommenderIRStatsEvaluator.java |    64 -
 .../cf/taste/eval/RelevantItemsDataSplitter.java   |    62 -
 .../cf/taste/hadoop/EntityEntityWritable.java      |    98 -
 .../mahout/cf/taste/hadoop/EntityPrefWritable.java |    89 -
 .../cf/taste/hadoop/MutableRecommendedItem.java    |    81 -
 .../cf/taste/hadoop/RecommendedItemsWritable.java  |    96 -
 .../mahout/cf/taste/hadoop/TasteHadoopUtils.java   |    84 -
 .../cf/taste/hadoop/ToEntityPrefsMapper.java       |    78 -
 .../mahout/cf/taste/hadoop/ToItemPrefsMapper.java  |    46 -
 .../mahout/cf/taste/hadoop/TopItemsQueue.java      |    60 -
 .../org/apache/mahout/cf/taste/hadoop/als/ALS.java |   100 -
 .../cf/taste/hadoop/als/DatasetSplitter.java       |   158 -
 .../taste/hadoop/als/FactorizationEvaluator.java   |   166 -
 .../hadoop/als/MultithreadedSharingMapper.java     |    62 -
 .../hadoop/als/ParallelALSFactorizationJob.java    |   414 -
 .../cf/taste/hadoop/als/PredictionMapper.java      |   145 -
 .../mahout/cf/taste/hadoop/als/RecommenderJob.java |   110 -
 .../mahout/cf/taste/hadoop/als/SharingMapper.java  |    59 -
 .../hadoop/als/SolveExplicitFeedbackMapper.java    |    61 -
 .../hadoop/als/SolveImplicitFeedbackMapper.java    |    58 -
 .../hadoop/item/AggregateAndRecommendReducer.java  |   220 -
 .../mahout/cf/taste/hadoop/item/IDReader.java      |   244 -
 .../item/ItemFilterAsVectorAndPrefsReducer.java    |    62 -
 .../cf/taste/hadoop/item/ItemFilterMapper.java     |    47 -
 .../cf/taste/hadoop/item/ItemIDIndexMapper.java    |    56 -
 .../cf/taste/hadoop/item/ItemIDIndexReducer.java   |    48 -
 .../taste/hadoop/item/PartialMultiplyMapper.java   |    57 -
 .../item/PrefAndSimilarityColumnWritable.java      |    85 -
 .../cf/taste/hadoop/item/RecommenderJob.java       |   337 -
 .../item/SimilarityMatrixRowWrapperMapper.java     |    54 -
 .../cf/taste/hadoop/item/ToUserVectorsReducer.java |    84 -
 .../taste/hadoop/item/ToVectorAndPrefReducer.java  |    63 -
 .../hadoop/item/UserVectorSplitterMapper.java      |   116 -
 .../taste/hadoop/item/VectorAndPrefsWritable.java  |    92 -
 .../cf/taste/hadoop/item/VectorOrPrefWritable.java |   104 -
 .../preparation/PreparePreferenceMatrixJob.java    |   115 -
 .../hadoop/preparation/ToItemVectorsMapper.java    |    56 -
 .../hadoop/preparation/ToItemVectorsReducer.java   |    38 -
 .../hadoop/similarity/item/ItemSimilarityJob.java  |   233 -
 .../similarity/item/TopSimilarItemsQueue.java      |    60 -
 .../impl/common/AbstractLongPrimitiveIterator.java |    27 -
 .../apache/mahout/cf/taste/impl/common/BitSet.java |    93 -
 .../apache/mahout/cf/taste/impl/common/Cache.java  |   178 -
 .../mahout/cf/taste/impl/common/FastByIDMap.java   |   661 -
 .../mahout/cf/taste/impl/common/FastIDSet.java     |   426 -
 .../mahout/cf/taste/impl/common/FastMap.java       |   729 -
 .../cf/taste/impl/common/FixedRunningAverage.java  |    83 -
 .../impl/common/FixedRunningAverageAndStdDev.java  |    51 -
 .../cf/taste/impl/common/FullRunningAverage.java   |   109 -
 .../impl/common/FullRunningAverageAndStdDev.java   |   107 -
 .../taste/impl/common/InvertedRunningAverage.java  |    58 -
 .../common/InvertedRunningAverageAndStdDev.java    |    63 -
 .../impl/common/LongPrimitiveArrayIterator.java    |    93 -
 .../taste/impl/common/LongPrimitiveIterator.java   |    39 -
 .../mahout/cf/taste/impl/common/RefreshHelper.java |   122 -
 .../mahout/cf/taste/impl/common/Retriever.java     |    36 -
 .../cf/taste/impl/common/RunningAverage.java       |    67 -
 .../taste/impl/common/RunningAverageAndStdDev.java |    36 -
 .../impl/common/SamplingLongPrimitiveIterator.java |   111 -
 .../cf/taste/impl/common/SkippingIterator.java     |    35 -
 .../taste/impl/common/WeightedRunningAverage.java  |   100 -
 .../common/WeightedRunningAverageAndStdDev.java    |    89 -
 .../impl/common/jdbc/AbstractJDBCComponent.java    |    88 -
 .../cf/taste/impl/common/jdbc/EachRowIterator.java |    92 -
 .../taste/impl/common/jdbc/ResultSetIterator.java  |    66 -
 .../AbstractDifferenceRecommenderEvaluator.java    |   276 -
 ...rageAbsoluteDifferenceRecommenderEvaluator.java |    59 -
 .../eval/GenericRecommenderIRStatsEvaluator.java   |   237 -
 .../eval/GenericRelevantItemsDataSplitter.java     |    83 -
 .../cf/taste/impl/eval/IRStatisticsImpl.java       |    95 -
 .../mahout/cf/taste/impl/eval/LoadCallable.java    |    40 -
 .../mahout/cf/taste/impl/eval/LoadEvaluator.java   |    61 -
 .../mahout/cf/taste/impl/eval/LoadStatistics.java  |    34 -
 .../impl/eval/OrderBasedRecommenderEvaluator.java  |   431 -
 .../taste/impl/eval/RMSRecommenderEvaluator.java   |    56 -
 .../mahout/cf/taste/impl/eval/StatsCallable.java   |    64 -
 .../cf/taste/impl/model/AbstractDataModel.java     |    53 -
 .../cf/taste/impl/model/AbstractIDMigrator.java    |    66 -
 .../taste/impl/model/AbstractJDBCIDMigrator.java   |   108 -
 .../impl/model/BooleanItemPreferenceArray.java     |   234 -
 .../cf/taste/impl/model/BooleanPreference.java     |    64 -
 .../impl/model/BooleanUserPreferenceArray.java     |   234 -
 .../impl/model/GenericBooleanPrefDataModel.java    |   320 -
 .../cf/taste/impl/model/GenericDataModel.java      |   361 -
 .../impl/model/GenericItemPreferenceArray.java     |   301 -
 .../cf/taste/impl/model/GenericPreference.java     |    70 -
 .../impl/model/GenericUserPreferenceArray.java     |   307 -
 .../cf/taste/impl/model/MemoryIDMigrator.java      |    55 -
 .../cf/taste/impl/model/MySQLJDBCIDMigrator.java   |    67 -
 .../PlusAnonymousConcurrentUserDataModel.java      |   352 -
 .../impl/model/PlusAnonymousUserDataModel.java     |   320 -
 .../PlusAnonymousUserLongPrimitiveIterator.java    |    90 -
 .../cf/taste/impl/model/file/FileDataModel.java    |   758 -
 .../cf/taste/impl/model/file/FileIDMigrator.java   |   117 -
 .../neighborhood/AbstractUserNeighborhood.java     |    71 -
 .../impl/neighborhood/CachingUserNeighborhood.java |    69 -
 .../neighborhood/NearestNUserNeighborhood.java     |   122 -
 .../neighborhood/ThresholdUserNeighborhood.java    |   104 -
 .../AbstractCandidateItemsStrategy.java            |    57 -
 .../impl/recommender/AbstractRecommender.java      |   140 -
 .../AllSimilarItemsCandidateItemsStrategy.java     |    50 -
 .../AllUnknownItemsCandidateItemsStrategy.java     |    41 -
 .../impl/recommender/ByRescoreComparator.java      |    65 -
 .../ByValueRecommendedItemComparator.java          |    43 -
 .../taste/impl/recommender/CachingRecommender.java |   251 -
 .../recommender/EstimatedPreferenceCapper.java     |    46 -
 .../GenericBooleanPrefItemBasedRecommender.java    |    71 -
 .../GenericBooleanPrefUserBasedRecommender.java    |    82 -
 .../recommender/GenericItemBasedRecommender.java   |   378 -
 .../impl/recommender/GenericRecommendedItem.java   |    76 -
 .../recommender/GenericUserBasedRecommender.java   |   247 -
 .../impl/recommender/ItemAverageRecommender.java   |   199 -
 .../recommender/ItemUserAverageRecommender.java    |   240 -
 .../cf/taste/impl/recommender/NullRescorer.java    |    86 -
 ...redItemsNeighborhoodCandidateItemsStrategy.java |    48 -
 .../taste/impl/recommender/RandomRecommender.java  |    97 -
 .../SamplingCandidateItemsStrategy.java            |   165 -
 .../cf/taste/impl/recommender/SimilarUser.java     |    80 -
 .../mahout/cf/taste/impl/recommender/TopItems.java |   211 -
 .../impl/recommender/svd/ALSWRFactorizer.java      |   312 -
 .../impl/recommender/svd/AbstractFactorizer.java   |    94 -
 .../taste/impl/recommender/svd/Factorization.java  |   137 -
 .../cf/taste/impl/recommender/svd/Factorizer.java  |    30 -
 .../recommender/svd/FilePersistenceStrategy.java   |   139 -
 .../recommender/svd/NoPersistenceStrategy.java     |    37 -
 .../recommender/svd/ParallelSGDFactorizer.java     |   340 -
 .../impl/recommender/svd/PersistenceStrategy.java  |    46 -
 .../impl/recommender/svd/RatingSGDFactorizer.java  |   221 -
 .../recommender/svd/SVDPlusPlusFactorizer.java     |   178 -
 .../taste/impl/recommender/svd/SVDPreference.java  |    41 -
 .../taste/impl/recommender/svd/SVDRecommender.java |   185 -
 .../impl/similarity/AbstractItemSimilarity.java    |    64 -
 .../taste/impl/similarity/AbstractSimilarity.java  |   343 -
 .../similarity/AveragingPreferenceInferrer.java    |    85 -
 .../impl/similarity/CachingItemSimilarity.java     |   111 -
 .../impl/similarity/CachingUserSimilarity.java     |   104 -
 .../taste/impl/similarity/CityBlockSimilarity.java |    98 -
 .../similarity/EuclideanDistanceSimilarity.java    |    67 -
 .../impl/similarity/GenericItemSimilarity.java     |   358 -
 .../impl/similarity/GenericUserSimilarity.java     |   238 -
 .../impl/similarity/LogLikelihoodSimilarity.java   |   121 -
 .../impl/similarity/LongPairMatchPredicate.java    |    40 -
 .../similarity/PearsonCorrelationSimilarity.java   |    93 -
 .../similarity/SpearmanCorrelationSimilarity.java  |   135 -
 .../similarity/TanimotoCoefficientSimilarity.java  |   126 -
 .../similarity/UncenteredCosineSimilarity.java     |    69 -
 .../file/FileItemItemSimilarityIterable.java       |    46 -
 .../file/FileItemItemSimilarityIterator.java       |    60 -
 .../impl/similarity/file/FileItemSimilarity.java   |   137 -
 .../precompute/FileSimilarItemsWriter.java         |    67 -
 .../MultithreadedBatchItemSimilarities.java        |   230 -
 .../apache/mahout/cf/taste/model/DataModel.java    |   199 -
 .../apache/mahout/cf/taste/model/IDMigrator.java   |    63 -
 .../mahout/cf/taste/model/JDBCDataModel.java       |    43 -
 .../apache/mahout/cf/taste/model/Preference.java   |    48 -
 .../mahout/cf/taste/model/PreferenceArray.java     |   143 -
 .../mahout/cf/taste/model/UpdatableIDMigrator.java |    47 -
 .../cf/taste/neighborhood/UserNeighborhood.java    |    40 -
 .../taste/recommender/CandidateItemsStrategy.java  |    37 -
 .../mahout/cf/taste/recommender/IDRescorer.java    |    47 -
 .../cf/taste/recommender/ItemBasedRecommender.java |   145 -
 .../MostSimilarItemsCandidateItemsStrategy.java    |    31 -
 .../cf/taste/recommender/RecommendedItem.java      |    41 -
 .../mahout/cf/taste/recommender/Recommender.java   |   132 -
 .../mahout/cf/taste/recommender/Rescorer.java      |    52 -
 .../cf/taste/recommender/UserBasedRecommender.java |    54 -
 .../mahout/cf/taste/similarity/ItemSimilarity.java |    64 -
 .../cf/taste/similarity/PreferenceInferrer.java    |    47 -
 .../mahout/cf/taste/similarity/UserSimilarity.java |    58 -
 .../precompute/BatchItemSimilarities.java          |    56 -
 .../taste/similarity/precompute/SimilarItem.java   |    56 -
 .../taste/similarity/precompute/SimilarItems.java  |    84 -
 .../similarity/precompute/SimilarItemsWriter.java  |    33 -
 .../classifier/AbstractVectorClassifier.java       |   248 -
 .../apache/mahout/classifier/ClassifierResult.java |    74 -
 .../apache/mahout/classifier/ConfusionMatrix.java  |   444 -
 .../apache/mahout/classifier/OnlineLearner.java    |    96 -
 .../classifier/RegressionResultAnalyzer.java       |   144 -
 .../apache/mahout/classifier/ResultAnalyzer.java   |   132 -
 .../org/apache/mahout/classifier/df/Bagging.java   |    61 -
 .../org/apache/mahout/classifier/df/DFUtils.java   |   174 -
 .../mahout/classifier/df/DecisionForest.java       |   241 -
 .../apache/mahout/classifier/df/ErrorEstimate.java |    51 -
 .../classifier/df/builder/DecisionTreeBuilder.java |   422 -
 .../classifier/df/builder/DefaultTreeBuilder.java  |   253 -
 .../mahout/classifier/df/builder/TreeBuilder.java  |    42 -
 .../org/apache/mahout/classifier/df/data/Data.java |   281 -
 .../mahout/classifier/df/data/DataConverter.java   |    72 -
 .../mahout/classifier/df/data/DataLoader.java      |   255 -
 .../mahout/classifier/df/data/DataUtils.java       |    89 -
 .../apache/mahout/classifier/df/data/Dataset.java  |   422 -
 .../classifier/df/data/DescriptorException.java    |    28 -
 .../mahout/classifier/df/data/DescriptorUtils.java |   110 -
 .../apache/mahout/classifier/df/data/Instance.java |    75 -
 .../classifier/df/data/conditions/Condition.java   |    57 -
 .../classifier/df/data/conditions/Equals.java      |    42 -
 .../df/data/conditions/GreaterOrEquals.java        |    42 -
 .../classifier/df/data/conditions/Lesser.java      |    42 -
 .../mahout/classifier/df/mapreduce/Builder.java    |   333 -
 .../mahout/classifier/df/mapreduce/Classifier.java |   238 -
 .../classifier/df/mapreduce/MapredMapper.java      |    75 -
 .../classifier/df/mapreduce/MapredOutput.java      |   120 -
 .../df/mapreduce/inmem/InMemBuilder.java           |   114 -
 .../df/mapreduce/inmem/InMemInputFormat.java       |   284 -
 .../classifier/df/mapreduce/inmem/InMemMapper.java |   106 -
 .../df/mapreduce/inmem/package-info.java           |    38 -
 .../df/mapreduce/partial/PartialBuilder.java       |   158 -
 .../df/mapreduce/partial/Step1Mapper.java          |   168 -
 .../classifier/df/mapreduce/partial/TreeID.java    |    58 -
 .../df/mapreduce/partial/package-info.java         |    32 -
 .../mahout/classifier/df/node/CategoricalNode.java |   134 -
 .../org/apache/mahout/classifier/df/node/Leaf.java |    95 -
 .../org/apache/mahout/classifier/df/node/Node.java |    96 -
 .../mahout/classifier/df/node/NumericalNode.java   |   115 -
 .../classifier/df/ref/SequentialBuilder.java       |    78 -
 .../mahout/classifier/df/split/DefaultIgSplit.java |   118 -
 .../apache/mahout/classifier/df/split/IgSplit.java |    35 -
 .../mahout/classifier/df/split/OptIgSplit.java     |   232 -
 .../classifier/df/split/RegressionSplit.java       |   177 -
 .../apache/mahout/classifier/df/split/Split.java   |    68 -
 .../mahout/classifier/df/tools/Describe.java       |   166 -
 .../classifier/df/tools/ForestVisualizer.java      |   158 -
 .../mahout/classifier/df/tools/Frequencies.java    |   122 -
 .../mahout/classifier/df/tools/FrequenciesJob.java |   297 -
 .../mahout/classifier/df/tools/TreeVisualizer.java |   264 -
 .../mahout/classifier/df/tools/UDistrib.java       |   212 -
 .../apache/mahout/classifier/evaluation/Auc.java   |   233 -
 .../naivebayes/AbstractNaiveBayesClassifier.java   |    82 -
 .../mahout/classifier/naivebayes/BayesUtils.java   |   161 -
 .../ComplementaryNaiveBayesClassifier.java         |    43 -
 .../classifier/naivebayes/NaiveBayesModel.java     |   170 -
 .../naivebayes/StandardNaiveBayesClassifier.java   |    40 -
 .../naivebayes/test/BayesTestMapper.java           |    76 -
 .../naivebayes/test/TestNaiveBayesDriver.java      |   176 -
 .../training/ComplementaryThetaTrainer.java        |    83 -
 .../naivebayes/training/IndexInstancesMapper.java  |    53 -
 .../naivebayes/training/ThetaMapper.java           |    61 -
 .../naivebayes/training/TrainNaiveBayesJob.java    |   177 -
 .../naivebayes/training/WeightsMapper.java         |    68 -
 .../sequencelearning/hmm/BaumWelchTrainer.java     |   161 -
 .../sequencelearning/hmm/HmmAlgorithms.java        |   306 -
 .../sequencelearning/hmm/HmmEvaluator.java         |   194 -
 .../classifier/sequencelearning/hmm/HmmModel.java  |   383 -
 .../sequencelearning/hmm/HmmTrainer.java           |   488 -
 .../classifier/sequencelearning/hmm/HmmUtils.java  |   360 -
 .../sequencelearning/hmm/LossyHmmSerializer.java   |    62 -
 .../hmm/RandomSequenceGenerator.java               |   102 -
 .../sequencelearning/hmm/ViterbiEvaluator.java     |   122 -
 .../sgd/AbstractOnlineLogisticRegression.java      |   317 -
 .../classifier/sgd/AdaptiveLogisticRegression.java |   586 -
 .../mahout/classifier/sgd/CrossFoldLearner.java    |   334 -
 .../mahout/classifier/sgd/CsvRecordFactory.java    |   395 -
 .../mahout/classifier/sgd/DefaultGradient.java     |    49 -
 .../mahout/classifier/sgd/ElasticBandPrior.java    |    76 -
 .../org/apache/mahout/classifier/sgd/Gradient.java |    30 -
 .../mahout/classifier/sgd/GradientMachine.java     |   405 -
 .../java/org/apache/mahout/classifier/sgd/L1.java  |    59 -
 .../java/org/apache/mahout/classifier/sgd/L2.java  |    66 -
 .../mahout/classifier/sgd/MixedGradient.java       |    66 -
 .../mahout/classifier/sgd/ModelDissector.java      |   232 -
 .../mahout/classifier/sgd/ModelSerializer.java     |    67 -
 .../classifier/sgd/OnlineLogisticRegression.java   |   172 -
 .../mahout/classifier/sgd/PassiveAggressive.java   |   204 -
 .../mahout/classifier/sgd/PolymorphicWritable.java |    46 -
 .../mahout/classifier/sgd/PriorFunction.java       |    45 -
 .../mahout/classifier/sgd/RankingGradient.java     |    85 -
 .../mahout/classifier/sgd/RecordFactory.java       |    47 -
 .../org/apache/mahout/classifier/sgd/TPrior.java   |    61 -
 .../apache/mahout/classifier/sgd/UniformPrior.java |    47 -
 .../apache/mahout/classifier/sgd/package-info.java |    39 -
 .../apache/mahout/clustering/AbstractCluster.java  |   390 -
 .../java/org/apache/mahout/clustering/Cluster.java |    90 -
 .../apache/mahout/clustering/ClusteringUtils.java  |   306 -
 .../mahout/clustering/GaussianAccumulator.java     |    62 -
 .../java/org/apache/mahout/clustering/Model.java   |    93 -
 .../mahout/clustering/ModelDistribution.java       |    41 -
 .../clustering/OnlineGaussianAccumulator.java      |   107 -
 .../clustering/RunningSumsGaussianAccumulator.java |    90 -
 .../mahout/clustering/UncommonDistributions.java   |   136 -
 .../apache/mahout/clustering/canopy/Canopy.java    |    60 -
 .../mahout/clustering/canopy/CanopyClusterer.java  |   220 -
 .../mahout/clustering/canopy/CanopyConfigKeys.java |    70 -
 .../mahout/clustering/canopy/CanopyDriver.java     |   379 -
 .../mahout/clustering/canopy/CanopyMapper.java     |    66 -
 .../mahout/clustering/canopy/CanopyReducer.java    |    70 -
 .../classify/ClusterClassificationConfigKeys.java  |    33 -
 .../classify/ClusterClassificationDriver.java      |   313 -
 .../classify/ClusterClassificationMapper.java      |   161 -
 .../clustering/classify/ClusterClassifier.java     |   231 -
 .../classify/WeightedPropertyVectorWritable.java   |    95 -
 .../classify/WeightedVectorWritable.java           |    72 -
 .../fuzzykmeans/FuzzyKMeansClusterer.java          |    59 -
 .../clustering/fuzzykmeans/FuzzyKMeansDriver.java  |   324 -
 .../clustering/fuzzykmeans/FuzzyKMeansUtil.java    |    76 -
 .../mahout/clustering/fuzzykmeans/SoftCluster.java |    60 -
 .../iterator/AbstractClusteringPolicy.java         |    72 -
 .../mahout/clustering/iterator/CIMapper.java       |    71 -
 .../mahout/clustering/iterator/CIReducer.java      |    64 -
 .../iterator/CanopyClusteringPolicy.java           |    52 -
 .../clustering/iterator/ClusterIterator.java       |   219 -
 .../clustering/iterator/ClusterWritable.java       |    56 -
 .../clustering/iterator/ClusteringPolicy.java      |    66 -
 .../iterator/ClusteringPolicyWritable.java         |    55 -
 .../iterator/DistanceMeasureCluster.java           |    91 -
 .../iterator/FuzzyKMeansClusteringPolicy.java      |    90 -
 .../iterator/KMeansClusteringPolicy.java           |    64 -
 .../mahout/clustering/kernel/IKernelProfile.java   |    27 -
 .../clustering/kernel/TriangularKernelProfile.java |    27 -
 .../mahout/clustering/kmeans/KMeansDriver.java     |   257 -
 .../mahout/clustering/kmeans/KMeansUtil.java       |    74 -
 .../apache/mahout/clustering/kmeans/Kluster.java   |   117 -
 .../clustering/kmeans/RandomSeedGenerator.java     |   136 -
 .../mahout/clustering/kmeans/package-info.java     |    21 -
 .../clustering/lda/cvb/CVB0DocInferenceMapper.java |    51 -
 .../mahout/clustering/lda/cvb/CVB0Driver.java      |   536 -
 .../cvb/CVB0TopicTermVectorNormalizerMapper.java   |    38 -
 .../clustering/lda/cvb/CachingCVB0Mapper.java      |   133 -
 .../lda/cvb/CachingCVB0PerplexityMapper.java       |   108 -
 .../cvb/InMemoryCollapsedVariationalBayes0.java    |   492 -
 .../mahout/clustering/lda/cvb/ModelTrainer.java    |   301 -
 .../mahout/clustering/lda/cvb/TopicModel.java      |   513 -
 .../org/apache/mahout/clustering/package-info.java |    29 -
 .../spectral/AffinityMatrixInputJob.java           |    84 -
 .../spectral/AffinityMatrixInputMapper.java        |    78 -
 .../spectral/AffinityMatrixInputReducer.java       |    59 -
 .../clustering/spectral/IntDoublePairWritable.java |    75 -
 .../apache/mahout/clustering/spectral/Keys.java    |    31 -
 .../clustering/spectral/MatrixDiagonalizeJob.java  |   108 -
 .../clustering/spectral/UnitVectorizerJob.java     |    79 -
 .../mahout/clustering/spectral/VectorCache.java    |   116 -
 .../spectral/VectorMatrixMultiplicationJob.java    |   139 -
 .../mahout/clustering/spectral/VertexWritable.java |   101 -
 .../spectral/kmeans/EigenSeedGenerator.java        |   120 -
 .../spectral/kmeans/SpectralKMeansDriver.java      |   243 -
 .../clustering/streaming/cluster/BallKMeans.java   |   456 -
 .../streaming/cluster/StreamingKMeans.java         |   368 -
 .../streaming/mapreduce/CentroidWritable.java      |    88 -
 .../streaming/mapreduce/StreamingKMeansDriver.java |   493 -
 .../streaming/mapreduce/StreamingKMeansMapper.java |   102 -
 .../mapreduce/StreamingKMeansReducer.java          |   109 -
 .../streaming/mapreduce/StreamingKMeansThread.java |    92 -
 .../mapreduce/StreamingKMeansUtilsMR.java          |   154 -
 .../streaming/tools/ResplitSequenceFiles.java      |   149 -
 .../mahout/clustering/topdown/PathDirectory.java   |    94 -
 .../topdown/postprocessor/ClusterCountReader.java  |   103 -
 .../postprocessor/ClusterOutputPostProcessor.java  |   139 -
 .../ClusterOutputPostProcessorDriver.java          |   182 -
 .../ClusterOutputPostProcessorMapper.java          |    58 -
 .../ClusterOutputPostProcessorReducer.java         |    62 -
 .../java/org/apache/mahout/common/AbstractJob.java |   648 -
 .../java/org/apache/mahout/common/ClassUtils.java  |    61 -
 .../org/apache/mahout/common/CommandLineUtil.java  |    68 -
 .../java/org/apache/mahout/common/HadoopUtil.java  |   435 -
 .../org/apache/mahout/common/IntPairWritable.java  |   270 -
 .../org/apache/mahout/common/IntegerTuple.java     |   176 -
 .../java/org/apache/mahout/common/LongPair.java    |    80 -
 .../java/org/apache/mahout/common/MemoryUtil.java  |    99 -
 .../main/java/org/apache/mahout/common/Pair.java   |    99 -
 .../java/org/apache/mahout/common/Parameters.java  |    98 -
 .../java/org/apache/mahout/common/StringTuple.java |   177 -
 .../java/org/apache/mahout/common/StringUtils.java |    63 -
 .../org/apache/mahout/common/TimingStatistics.java |   154 -
 .../common/commandline/DefaultOptionCreator.java   |   417 -
 .../common/distance/ChebyshevDistanceMeasure.java  |    63 -
 .../common/distance/CosineDistanceMeasure.java     |   119 -
 .../mahout/common/distance/DistanceMeasure.java    |    48 -
 .../common/distance/EuclideanDistanceMeasure.java  |    41 -
 .../distance/MahalanobisDistanceMeasure.java       |   197 -
 .../common/distance/ManhattanDistanceMeasure.java  |    70 -
 .../common/distance/MinkowskiDistanceMeasure.java  |    93 -
 .../distance/SquaredEuclideanDistanceMeasure.java  |    59 -
 .../common/distance/TanimotoDistanceMeasure.java   |    69 -
 .../common/distance/WeightedDistanceMeasure.java   |    93 -
 .../distance/WeightedEuclideanDistanceMeasure.java |    51 -
 .../distance/WeightedManhattanDistanceMeasure.java |    53 -
 .../common/iterator/CopyConstructorIterator.java   |    64 -
 .../mahout/common/iterator/CountingIterator.java   |    43 -
 .../mahout/common/iterator/FileLineIterable.java   |    88 -
 .../mahout/common/iterator/FileLineIterator.java   |   167 -
 .../common/iterator/FixedSizeSamplingIterator.java |    59 -
 .../mahout/common/iterator/SamplingIterable.java   |    45 -
 .../mahout/common/iterator/SamplingIterator.java   |    73 -
 .../iterator/StableFixedSizeSamplingIterator.java  |    72 -
 .../common/iterator/StringRecordIterator.java      |    55 -
 .../common/iterator/sequencefile/PathFilters.java  |    81 -
 .../common/iterator/sequencefile/PathType.java     |    27 -
 .../sequencefile/SequenceFileDirIterable.java      |    84 -
 .../sequencefile/SequenceFileDirIterator.java      |   136 -
 .../sequencefile/SequenceFileDirValueIterable.java |    83 -
 .../sequencefile/SequenceFileDirValueIterator.java |   159 -
 .../sequencefile/SequenceFileIterable.java         |    68 -
 .../sequencefile/SequenceFileIterator.java         |   118 -
 .../sequencefile/SequenceFileValueIterable.java    |    67 -
 .../sequencefile/SequenceFileValueIterator.java    |    97 -
 .../apache/mahout/common/lucene/AnalyzerUtils.java |    61 -
 .../mahout/common/lucene/IteratorTokenStream.java  |    45 -
 .../mahout/common/lucene/TokenStreamIterator.java  |    57 -
 .../common/mapreduce/MergeVectorsCombiner.java     |    34 -
 .../common/mapreduce/MergeVectorsReducer.java      |    40 -
 .../mahout/common/mapreduce/TransposeMapper.java   |    49 -
 .../mahout/common/mapreduce/VectorSumCombiner.java |    38 -
 .../mahout/common/mapreduce/VectorSumReducer.java  |    35 -
 .../java/org/apache/mahout/common/nlp/NGrams.java  |    94 -
 .../common/parameters/AbstractParameter.java       |   120 -
 .../mahout/common/parameters/ClassParameter.java   |    44 -
 .../mahout/common/parameters/DoubleParameter.java  |    33 -
 .../apache/mahout/common/parameters/Parameter.java |    62 -
 .../mahout/common/parameters/Parametered.java      |   206 -
 .../mahout/common/parameters/PathParameter.java    |    33 -
 .../org/apache/mahout/driver/MahoutDriver.java     |   244 -
 .../org/apache/mahout/ep/EvolutionaryProcess.java  |   229 -
 .../main/java/org/apache/mahout/ep/Mapping.java    |   206 -
 .../main/java/org/apache/mahout/ep/Payload.java    |    36 -
 .../src/main/java/org/apache/mahout/ep/State.java  |   302 -
 .../java/org/apache/mahout/ep/package-info.java    |    42 -
 .../mahout/math/DistributedRowMatrixWriter.java    |    47 -
 .../java/org/apache/mahout/math/MatrixUtils.java   |   114 -
 .../mahout/math/MultiLabelVectorWritable.java      |    88 -
 .../math/als/AlternatingLeastSquaresSolver.java    |   116 -
 ...licitFeedbackAlternatingLeastSquaresSolver.java |   171 -
 .../mahout/math/decomposer/AsyncEigenVerifier.java |    80 -
 .../apache/mahout/math/decomposer/EigenStatus.java |    50 -
 .../math/decomposer/SimpleEigenVerifier.java       |    41 -
 .../math/decomposer/SingularVectorVerifier.java    |    25 -
 .../math/decomposer/hebbian/EigenUpdater.java      |    25 -
 .../math/decomposer/hebbian/HebbianSolver.java     |   342 -
 .../math/decomposer/hebbian/HebbianUpdater.java    |    71 -
 .../math/decomposer/hebbian/TrainingState.java     |   143 -
 .../math/decomposer/lanczos/LanczosSolver.java     |   213 -
 .../math/decomposer/lanczos/LanczosState.java      |   107 -
 .../mahout/math/hadoop/DistributedRowMatrix.java   |   390 -
 .../mahout/math/hadoop/MatrixColumnMeansJob.java   |   236 -
 .../math/hadoop/MatrixMultiplicationJob.java       |   177 -
 .../apache/mahout/math/hadoop/TimesSquaredJob.java |   251 -
 .../apache/mahout/math/hadoop/TransposeJob.java    |    85 -
 .../decomposer/DistributedLanczosSolver.java       |   299 -
 .../mahout/math/hadoop/decomposer/EigenVector.java |    76 -
 .../hadoop/decomposer/EigenVerificationJob.java    |   333 -
 .../hadoop/decomposer/HdfsBackedLanczosState.java  |   237 -
 .../math/hadoop/similarity/SeedVectorUtil.java     |   104 -
 .../similarity/VectorDistanceInvertedMapper.java   |    71 -
 .../hadoop/similarity/VectorDistanceMapper.java    |    80 -
 .../similarity/VectorDistanceSimilarityJob.java    |   153 -
 .../similarity/cooccurrence/MutableElement.java    |    50 -
 .../similarity/cooccurrence/RowSimilarityJob.java  |   562 -
 .../similarity/cooccurrence/TopElementsQueue.java  |    59 -
 .../hadoop/similarity/cooccurrence/Vectors.java    |   199 -
 .../cooccurrence/measures/CityBlockSimilarity.java |    26 -
 .../measures/CooccurrenceCountSimilarity.java      |    32 -
 .../cooccurrence/measures/CosineSimilarity.java    |    50 -
 .../cooccurrence/measures/CountbasedMeasure.java   |    44 -
 .../measures/EuclideanDistanceSimilarity.java      |    57 -
 .../measures/LoglikelihoodSimilarity.java          |    34 -
 .../measures/PearsonCorrelationSimilarity.java     |    37 -
 .../measures/TanimotoCoefficientSimilarity.java    |    34 -
 .../measures/VectorSimilarityMeasure.java          |    32 -
 .../measures/VectorSimilarityMeasures.java         |    46 -
 .../solver/DistributedConjugateGradientSolver.java |   172 -
 .../mahout/math/hadoop/stats/BasicStats.java       |   148 -
 .../stats/StandardDeviationCalculatorMapper.java   |    55 -
 .../stats/StandardDeviationCalculatorReducer.java  |    37 -
 .../mahout/math/hadoop/stats/VarianceTotals.java   |    68 -
 .../math/hadoop/stochasticsvd/ABtDenseOutJob.java  |   585 -
 .../mahout/math/hadoop/stochasticsvd/ABtJob.java   |   494 -
 .../mahout/math/hadoop/stochasticsvd/BtJob.java    |   628 -
 .../hadoop/stochasticsvd/DenseBlockWritable.java   |    83 -
 .../mahout/math/hadoop/stochasticsvd/Omega.java    |   257 -
 .../mahout/math/hadoop/stochasticsvd/QJob.java     |   237 -
 .../mahout/math/hadoop/stochasticsvd/SSVDCli.java  |   201 -
 .../math/hadoop/stochasticsvd/SSVDHelper.java      |   322 -
 .../math/hadoop/stochasticsvd/SSVDSolver.java      |   662 -
 .../stochasticsvd/SparseRowBlockAccumulator.java   |    90 -
 .../stochasticsvd/SparseRowBlockWritable.java      |   159 -
 .../stochasticsvd/SplitPartitionedWritable.java    |   151 -
 .../mahout/math/hadoop/stochasticsvd/UJob.java     |   170 -
 .../mahout/math/hadoop/stochasticsvd/VJob.java     |   224 -
 .../mahout/math/hadoop/stochasticsvd/YtYJob.java   |   220 -
 .../hadoop/stochasticsvd/qr/GivensThinSolver.java  |   643 -
 .../math/hadoop/stochasticsvd/qr/GramSchmidt.java  |    52 -
 .../math/hadoop/stochasticsvd/qr/QRFirstStep.java  |   284 -
 .../math/hadoop/stochasticsvd/qr/QRLastStep.java   |   144 -
 .../mahout/math/neighborhood/BruteSearch.java      |   186 -
 .../math/neighborhood/FastProjectionSearch.java    |   326 -
 .../mahout/math/neighborhood/HashedVector.java     |   103 -
 .../neighborhood/LocalitySensitiveHashSearch.java  |   295 -
 .../mahout/math/neighborhood/ProjectionSearch.java |   233 -
 .../apache/mahout/math/neighborhood/Searcher.java  |   155 -
 .../math/neighborhood/UpdatableSearcher.java       |    37 -
 .../math/random/AbstractSamplerFunction.java       |    39 -
 .../mahout/math/random/ChineseRestaurant.java      |   111 -
 .../org/apache/mahout/math/random/Empirical.java   |   124 -
 .../apache/mahout/math/random/IndianBuffet.java    |   157 -
 .../org/apache/mahout/math/random/Missing.java     |    59 -
 .../org/apache/mahout/math/random/MultiNormal.java |   118 -
 .../org/apache/mahout/math/random/Multinomial.java |   202 -
 .../java/org/apache/mahout/math/random/Normal.java |    40 -
 .../apache/mahout/math/random/PoissonSampler.java  |    67 -
 .../apache/mahout/math/random/RandomProjector.java |   133 -
 .../org/apache/mahout/math/random/Sampler.java     |    25 -
 .../apache/mahout/math/random/WeightedThing.java   |    71 -
 .../apache/mahout/math/ssvd/SequentialBigSvd.java  |    69 -
 .../mahout/math/ssvd/SequentialOutOfCoreSvd.java   |   233 -
 .../apache/mahout/math/stats/GlobalOnlineAuc.java  |   168 -
 .../apache/mahout/math/stats/GroupedOnlineAuc.java |   113 -
 .../org/apache/mahout/math/stats/OnlineAuc.java    |    38 -
 .../apache/mahout/math/stats/OnlineSummarizer.java |    93 -
 .../java/org/apache/mahout/math/stats/Sampler.java |    79 -
 .../mahout/vectorizer/DictionaryVectorizer.java    |   422 -
 .../mahout/vectorizer/DocumentProcessor.java       |    99 -
 .../EncodedVectorsFromSequenceFiles.java           |   104 -
 .../apache/mahout/vectorizer/EncodingMapper.java   |    92 -
 .../mahout/vectorizer/HighDFWordsPruner.java       |   147 -
 .../vectorizer/SimpleTextEncodingVectorizer.java   |    72 -
 .../vectorizer/SparseVectorsFromSequenceFiles.java |   369 -
 .../main/java/org/apache/mahout/vectorizer/TF.java |    30 -
 .../java/org/apache/mahout/vectorizer/TFIDF.java   |    31 -
 .../org/apache/mahout/vectorizer/Vectorizer.java   |    29 -
 .../apache/mahout/vectorizer/VectorizerConfig.java |   179 -
 .../java/org/apache/mahout/vectorizer/Weight.java  |    32 -
 .../collocations/llr/CollocCombiner.java           |    46 -
 .../vectorizer/collocations/llr/CollocDriver.java  |   284 -
 .../vectorizer/collocations/llr/CollocMapper.java  |   178 -
 .../vectorizer/collocations/llr/CollocReducer.java |   176 -
 .../mahout/vectorizer/collocations/llr/Gram.java   |   239 -
 .../vectorizer/collocations/llr/GramKey.java       |   133 -
 .../collocations/llr/GramKeyGroupComparator.java   |    43 -
 .../collocations/llr/GramKeyPartitioner.java       |    40 -
 .../vectorizer/collocations/llr/LLRReducer.java    |   170 -
 .../common/PartialVectorMergeReducer.java          |    89 -
 .../vectorizer/common/PartialVectorMerger.java     |   144 -
 .../document/SequenceFileTokenizerMapper.java      |    70 -
 .../encoders/AdaptiveWordValueEncoder.java         |    69 -
 .../encoders/CachingContinuousValueEncoder.java    |    64 -
 .../encoders/CachingStaticWordValueEncoder.java    |    66 -
 .../encoders/CachingTextValueEncoder.java          |    25 -
 .../vectorizer/encoders/CachingValueEncoder.java   |    64 -
 .../vectorizer/encoders/ConstantValueEncoder.java  |    57 -
 .../encoders/ContinuousValueEncoder.java           |    76 -
 .../mahout/vectorizer/encoders/Dictionary.java     |    54 -
 .../vectorizer/encoders/FeatureVectorEncoder.java  |   279 -
 .../encoders/InteractionValueEncoder.java          |   126 -
 .../encoders/LuceneTextValueEncoder.java           |   129 -
 .../encoders/StaticWordValueEncoder.java           |    80 -
 .../vectorizer/encoders/TextValueEncoder.java      |   142 -
 .../vectorizer/encoders/WordValueEncoder.java      |    81 -
 .../pruner/PrunedPartialVectorMergeReducer.java    |    65 -
 .../vectorizer/pruner/WordsPrunerReducer.java      |    86 -
 .../vectorizer/term/TFPartialVectorReducer.java    |   139 -
 .../mahout/vectorizer/term/TermCountCombiner.java  |    41 -
 .../mahout/vectorizer/term/TermCountMapper.java    |    58 -
 .../mahout/vectorizer/term/TermCountReducer.java   |    55 -
 .../vectorizer/term/TermDocumentCountMapper.java   |    50 -
 .../vectorizer/term/TermDocumentCountReducer.java  |    41 -
 .../mahout/vectorizer/tfidf/TFIDFConverter.java    |   361 -
 .../tfidf/TFIDFPartialVectorReducer.java           |   114 -
 .../mr/src/main/resources/supplemental-models.xml  |   279 -
 community/mahout-mr/mr/src/main/resources/version  |     1 -
 .../apache/mahout/cf/taste/common/CommonTest.java  |    60 -
 .../cf/taste/hadoop/TasteHadoopUtilsTest.java      |    40 -
 .../mahout/cf/taste/hadoop/TopItemsQueueTest.java  |    72 -
 .../als/ParallelALSFactorizationJobTest.java       |   379 -
 .../mahout/cf/taste/hadoop/item/IDReaderTest.java  |    66 -
 .../cf/taste/hadoop/item/RecommenderJobTest.java   |   928 -
 .../hadoop/item/ToUserVectorsReducerTest.java      |    74 -
 .../similarity/item/ItemSimilarityJobTest.java     |   269 -
 .../apache/mahout/cf/taste/impl/TasteTestCase.java |    98 -
 .../mahout/cf/taste/impl/common/BitSetTest.java    |    74 -
 .../mahout/cf/taste/impl/common/CacheTest.java     |    61 -
 .../cf/taste/impl/common/FastByIDMapTest.java      |   147 -
 .../mahout/cf/taste/impl/common/FastIDSetTest.java |   162 -
 .../mahout/cf/taste/impl/common/FastMapTest.java   |   228 -
 .../impl/common/InvertedRunningAverageTest.java    |    88 -
 .../common/LongPrimitiveArrayIteratorTest.java     |    56 -
 .../cf/taste/impl/common/MockRefreshable.java      |    45 -
 .../cf/taste/impl/common/RefreshHelperTest.java    |    70 -
 .../impl/common/RunningAverageAndStdDevTest.java   |   107 -
 .../cf/taste/impl/common/RunningAverageTest.java   |    75 -
 .../common/SamplingLongPrimitiveIteratorTest.java  |    91 -
 .../impl/common/WeightedRunningAverageTest.java    |    85 -
 ...GenericRecommenderIRStatsEvaluatorImplTest.java |    73 -
 .../cf/taste/impl/eval/LoadEvaluationRunner.java   |    68 -
 .../impl/model/BooleanItemPreferenceArrayTest.java |    89 -
 .../impl/model/BooleanUserPreferenceArrayTest.java |    89 -
 .../cf/taste/impl/model/GenericDataModelTest.java  |    51 -
 .../impl/model/GenericItemPreferenceArrayTest.java |   110 -
 .../impl/model/GenericUserPreferenceArrayTest.java |   110 -
 .../cf/taste/impl/model/MemoryIDMigratorTest.java  |    57 -
 .../PlusAnonymousConcurrentUserDataModelTest.java  |   313 -
 .../taste/impl/model/file/FileDataModelTest.java   |   216 -
 .../taste/impl/model/file/FileIDMigratorTest.java  |   103 -
 .../taste/impl/neighborhood/DummySimilarity.java   |    68 -
 .../neighborhood/NearestNNeighborhoodTest.java     |    53 -
 .../neighborhood/ThresholdNeighborhoodTest.java    |    51 -
 .../AllUnknownItemsCandidateItemsStrategyTest.java |    65 -
 .../impl/recommender/CachingRecommenderTest.java   |    78 -
 .../GenericItemBasedRecommenderTest.java           |   324 -
 .../GenericUserBasedRecommenderTest.java           |   174 -
 .../recommender/ItemAverageRecommenderTest.java    |    43 -
 .../ItemUserAverageRecommenderTest.java            |    43 -
 .../cf/taste/impl/recommender/MockRecommender.java |    89 -
 .../taste/impl/recommender/NullRescorerTest.java   |    47 -
 ...temsNeighborhoodCandidateItemsStrategyTest.java |    75 -
 .../impl/recommender/RandomRecommenderTest.java    |    41 -
 .../taste/impl/recommender/ReversingRescorer.java  |    46 -
 .../SamplingCandidateItemsStrategyTest.java        |    71 -
 .../cf/taste/impl/recommender/TopItemsTest.java    |   158 -
 .../impl/recommender/svd/ALSWRFactorizerTest.java  |   208 -
 .../svd/FilePersistenceStrategyTest.java           |    53 -
 .../recommender/svd/ParallelSGDFactorizerTest.java |   355 -
 .../impl/recommender/svd/SVDRecommenderTest.java   |    86 -
 .../AveragingPreferenceInferrerTest.java           |    37 -
 .../EuclideanDistanceSimilarityTest.java           |   236 -
 .../impl/similarity/GenericItemSimilarityTest.java |   104 -
 .../similarity/LogLikelihoodSimilarityTest.java    |    80 -
 .../PearsonCorrelationSimilarityTest.java          |   265 -
 .../taste/impl/similarity/SimilarityTestCase.java  |    35 -
 .../SpearmanCorrelationSimilarityTest.java         |    80 -
 .../TanimotoCoefficientSimilarityTest.java         |   121 -
 .../similarity/file/FileItemSimilarityTest.java    |   142 -
 .../MultithreadedBatchItemSimilaritiesTest.java    |    98 -
 .../similarity/precompute/SimilarItemsTest.java    |    50 -
 .../apache/mahout/classifier/ClassifierData.java   |   102 -
 .../mahout/classifier/ConfusionMatrixTest.java     |   119 -
 .../classifier/RegressionResultAnalyzerTest.java   |   128 -
 .../mahout/classifier/df/DecisionForestTest.java   |   206 -
 .../df/builder/DecisionTreeBuilderTest.java        |    78 -
 .../df/builder/DefaultTreeBuilderTest.java         |    74 -
 .../df/builder/InfiniteRecursionTest.java          |    60 -
 .../classifier/df/data/DataConverterTest.java      |    60 -
 .../mahout/classifier/df/data/DataLoaderTest.java  |   350 -
 .../apache/mahout/classifier/df/data/DataTest.java |   396 -
 .../mahout/classifier/df/data/DatasetTest.java     |    72 -
 .../classifier/df/data/DescriptorUtilsTest.java    |    92 -
 .../apache/mahout/classifier/df/data/Utils.java    |   284 -
 .../df/mapreduce/inmem/InMemInputFormatTest.java   |   109 -
 .../df/mapreduce/inmem/InMemInputSplitTest.java    |    77 -
 .../df/mapreduce/partial/PartialBuilderTest.java   |   197 -
 .../df/mapreduce/partial/Step1MapperTest.java      |   160 -
 .../df/mapreduce/partial/TreeIDTest.java           |    48 -
 .../apache/mahout/classifier/df/node/NodeTest.java |   108 -
 .../classifier/df/split/DefaultIgSplitTest.java    |    78 -
 .../classifier/df/split/RegressionSplitTest.java   |    87 -
 .../mahout/classifier/df/tools/VisualizerTest.java |   211 -
 .../mahout/classifier/evaluation/AucTest.java      |    86 -
 .../ComplementaryNaiveBayesClassifierTest.java     |    47 -
 .../classifier/naivebayes/NaiveBayesModelTest.java |    36 -
 .../classifier/naivebayes/NaiveBayesTest.java      |   135 -
 .../classifier/naivebayes/NaiveBayesTestBase.java  |   135 -
 .../StandardNaiveBayesClassifierTest.java          |    47 -
 .../training/IndexInstancesMapperTest.java         |    85 -
 .../naivebayes/training/ThetaMapperTest.java       |    61 -
 .../naivebayes/training/WeightsMapperTest.java     |    60 -
 .../sequencelearning/hmm/HMMAlgorithmsTest.java    |   164 -
 .../sequencelearning/hmm/HMMEvaluatorTest.java     |    63 -
 .../sequencelearning/hmm/HMMModelTest.java         |    32 -
 .../sequencelearning/hmm/HMMTestBase.java          |    73 -
 .../sequencelearning/hmm/HMMTrainerTest.java       |   163 -
 .../sequencelearning/hmm/HMMUtilsTest.java         |   161 -
 .../sgd/AdaptiveLogisticRegressionTest.java        |   186 -
 .../classifier/sgd/CsvRecordFactoryTest.java       |    90 -
 .../mahout/classifier/sgd/GradientMachineTest.java |    41 -
 .../mahout/classifier/sgd/ModelSerializerTest.java |   162 -
 .../mahout/classifier/sgd/OnlineBaseTest.java      |   160 -
 .../sgd/OnlineLogisticRegressionTest.java          |   330 -
 .../classifier/sgd/PassiveAggressiveTest.java      |    35 -
 .../mahout/clustering/ClusteringTestUtils.java     |   152 -
 .../mahout/clustering/TestClusterInterface.java    |    83 -
 .../clustering/TestGaussianAccumulators.java       |   186 -
 .../clustering/canopy/TestCanopyCreation.java      |   674 -
 .../classify/ClusterClassificationDriverTest.java  |   255 -
 .../fuzzykmeans/TestFuzzyKmeansClustering.java     |   202 -
 .../clustering/iterator/TestClusterClassifier.java |   238 -
 .../clustering/kmeans/TestKmeansClustering.java    |   385 -
 .../clustering/kmeans/TestRandomSeedGenerator.java |   169 -
 .../clustering/lda/cvb/TestCVBModelTrainer.java    |   138 -
 .../spectral/TestAffinityMatrixInputJob.java       |   145 -
 .../spectral/TestMatrixDiagonalizeJob.java         |   116 -
 .../clustering/spectral/TestUnitVectorizerJob.java |    65 -
 .../clustering/spectral/TestVectorCache.java       |   110 -
 .../TestVectorMatrixMultiplicationJob.java         |    75 -
 .../spectral/kmeans/TestEigenSeedGenerator.java    |   100 -
 .../streaming/cluster/BallKMeansTest.java          |   196 -
 .../clustering/streaming/cluster/DataUtils.java    |    92 -
 .../streaming/cluster/StreamingKMeansTest.java     |   169 -
 .../streaming/mapreduce/StreamingKMeansTestMR.java |   282 -
 .../streaming/tools/ResplitSequenceFilesTest.java  |    80 -
 .../clustering/topdown/PathDirectoryTest.java      |    65 -
 .../postprocessor/ClusterCountReaderTest.java      |   121 -
 .../ClusterOutputPostProcessorTest.java            |   205 -
 .../org/apache/mahout/common/AbstractJobTest.java  |   240 -
 .../common/DistributedCacheFileLocationTest.java   |    46 -
 .../apache/mahout/common/DummyOutputCollector.java |    57 -
 .../apache/mahout/common/DummyRecordWriter.java    |   223 -
 .../mahout/common/DummyRecordWriterTest.java       |    45 -
 .../apache/mahout/common/DummyStatusReporter.java  |    76 -
 .../apache/mahout/common/IntPairWritableTest.java  |   114 -
 .../org/apache/mahout/common/MahoutTestCase.java   |   148 -
 .../org/apache/mahout/common/MockIterator.java     |    51 -
 .../org/apache/mahout/common/StringUtilsTest.java  |    70 -
 .../common/distance/CosineDistanceMeasureTest.java |    66 -
 .../distance/DefaultDistanceMeasureTest.java       |   103 -
 .../DefaultWeightedDistanceMeasureTest.java        |    56 -
 .../common/distance/TestChebyshevMeasure.java      |    55 -
 .../distance/TestEuclideanDistanceMeasure.java     |    26 -
 .../distance/TestMahalanobisDistanceMeasure.java   |    56 -
 .../distance/TestManhattanDistanceMeasure.java     |    26 -
 .../common/distance/TestMinkowskiMeasure.java      |    64 -
 .../distance/TestTanimotoDistanceMeasure.java      |    25 -
 .../TestWeightedEuclideanDistanceMeasureTest.java  |    25 -
 .../TestWeightedManhattanDistanceMeasure.java      |    26 -
 .../common/iterator/CountingIteratorTest.java      |    44 -
 .../apache/mahout/common/iterator/SamplerCase.java |   101 -
 .../common/iterator/TestFixedSizeSampler.java      |    33 -
 .../common/iterator/TestSamplingIterator.java      |    77 -
 .../iterator/TestStableFixedSizeSampler.java       |    33 -
 .../mahout/common/lucene/AnalyzerUtilsTest.java    |    38 -
 .../org/apache/mahout/driver/MahoutDriverTest.java |    34 -
 .../apache/mahout/ep/EvolutionaryProcessTest.java  |    81 -
 .../org/apache/mahout/math/MatrixWritableTest.java |   148 -
 .../java/org/apache/mahout/math/VarintTest.java    |   189 -
 .../org/apache/mahout/math/VectorWritableTest.java |   123 -
 .../org/apache/mahout/math/hadoop/MathHelper.java  |   236 -
 .../math/hadoop/TestDistributedRowMatrix.java      |   395 -
 .../decomposer/TestDistributedLanczosSolver.java   |   132 -
 .../TestDistributedLanczosSolverCLI.java           |   190 -
 .../TestVectorDistanceSimilarityJob.java           |   238 -
 .../cooccurrence/RowSimilarityJobTest.java         |   214 -
 .../measures/VectorSimilarityMeasuresTest.java     |   133 -
 .../TestDistributedConjugateGradientSolver.java    |    59 -
 .../TestDistributedConjugateGradientSolverCLI.java |   111 -
 .../mahout/math/hadoop/stats/BasicStatsTest.java   |   121 -
 .../stochasticsvd/LocalSSVDPCASparseTest.java      |   296 -
 .../stochasticsvd/LocalSSVDSolverDenseTest.java    |   206 -
 .../LocalSSVDSolverSparseSequentialTest.java       |   209 -
 .../math/hadoop/stochasticsvd/SSVDCommonTest.java  |   105 -
 .../math/hadoop/stochasticsvd/SSVDTestsHelper.java |   172 -
 .../LocalitySensitiveHashSearchTest.java           |   119 -
 .../apache/mahout/math/neighborhood/LumpyData.java |    77 -
 .../math/neighborhood/SearchQualityTest.java       |   178 -
 .../mahout/math/neighborhood/SearchSanityTest.java |   244 -
 .../math/ssvd/SequentialOutOfCoreSvdTest.java      |   195 -
 .../apache/mahout/math/stats/OnlineAucTest.java    |   127 -
 .../org/apache/mahout/math/stats/SamplerTest.java  |    45 -
 .../vectorizer/DictionaryVectorizerTest.java       |   220 -
 .../mahout/vectorizer/DocumentProcessorTest.java   |    81 -
 .../EncodedVectorsFromSequenceFilesTest.java       |   126 -
 .../mahout/vectorizer/HighDFWordsPrunerTest.java   |   154 -
 .../mahout/vectorizer/RandomDocumentGenerator.java |    69 -
 .../SparseVectorsFromSequenceFilesTest.java        |   203 -
 .../collocations/llr/CollocMapperTest.java         |   180 -
 .../collocations/llr/CollocReducerTest.java        |    86 -
 .../llr/GramKeyGroupComparatorTest.java            |    45 -
 .../collocations/llr/GramKeyPartitionerTest.java   |    54 -
 .../vectorizer/collocations/llr/GramKeyTest.java   |   106 -
 .../vectorizer/collocations/llr/GramTest.java      |   215 -
 .../collocations/llr/LLRReducerTest.java           |   116 -
 .../vectorizer/encoders/CachingEncoderTest.java    |    48 -
 .../encoders/ConstantValueEncoderTest.java         |    74 -
 .../encoders/ContinuousValueEncoderTest.java       |    88 -
 .../encoders/InteractionValueEncoderTest.java      |   103 -
 .../vectorizer/encoders/TextValueEncoderTest.java  |    99 -
 .../encoders/WordLikeValueEncoderTest.java         |    99 -
 .../mahout-mr/mr/src/test/resources/FPGsynth.dat   |   193 -
 .../mahout-mr/mr/src/test/resources/cancer.csv     |   684 -
 community/mahout-mr/mr/src/test/resources/iris.csv |   151 -
 .../mahout-mr/mr/src/test/resources/retail.dat     | 88162 -------------------
 .../resources/retail_results_with_min_sup_100.dat  |  6438 --
 community/mahout-mr/mr/src/test/resources/sgd.csv  |    61 -
 .../mahout-mr/mr/src/test/resources/word-list.txt  |   512 -
 community/mahout-mr/pom.xml                        |   117 -
 community/pom.xml                                  |    42 -
 community/spark-cli-drivers/pom.xml                |   153 -
 .../mahout/drivers/ItemSimilarityDriver.scala      |   213 -
 .../org/apache/mahout/drivers/MahoutDriver.scala   |    44 -
 .../apache/mahout/drivers/MahoutOptionParser.scala |   220 -
 .../apache/mahout/drivers/MahoutSparkDriver.scala  |   103 -
 .../mahout/drivers/MahoutSparkOptionParser.scala   |    47 -
 .../mahout/drivers/RowSimilarityDriver.scala       |   148 -
 .../org/apache/mahout/drivers/TestNBDriver.scala   |   108 -
 .../org/apache/mahout/drivers/TrainNBDriver.scala  |   111 -
 .../mahout/drivers/ItemSimilarityDriverSuite.scala |   832 -
 .../mahout/drivers/RowSimilarityDriverSuite.scala  |   139 -
 .../drivers/TextDelimitedReaderWriterSuite.scala   |    53 -
 core/pom.xml                                       |   261 -
 .../math/buffer/ValueTypeBufferConsumer.java.t     |    24 -
 .../math/function/KeyTypeObjectProcedure.java.t    |    31 -
 .../mahout/math/function/KeyTypeProcedure.java.t   |    30 -
 .../math/function/KeyTypeValueTypeProcedure.java.t |    31 -
 .../math/function/ObjectValueTypeProcedure.java.t  |    31 -
 .../math/function/ValueTypeComparator.java.t       |    62 -
 .../mahout/math/list/AbstractValueTypeList.java.t  |   833 -
 .../mahout/math/list/ValueTypeArrayList.java.t     |   642 -
 .../math/map/AbstractKeyTypeObjectMap.java.t       |   450 -
 .../math/map/AbstractKeyTypeValueTypeMap.java.t    |   491 -
 .../math/map/AbstractObjectValueTypeMap.java.t     |   498 -
 .../math/map/OpenKeyTypeObjectHashMap.java.t       |   530 -
 .../math/map/OpenKeyTypeValueTypeHashMap.java.t    |   614 -
 .../math/map/OpenObjectValueTypeHashMap.java.t     |   549 -
 .../mahout/math/set/AbstractKeyTypeSet.java.t      |   181 -
 .../mahout/math/set/OpenKeyTypeHashSet.java.t      |   423 -
 .../org/apache/mahout/collections/Arithmetic.java  |   471 -
 .../org/apache/mahout/collections/Constants.java   |    56 -
 .../java/org/apache/mahout/common/RandomUtils.java |   100 -
 .../org/apache/mahout/common/RandomWrapper.java    |   105 -
 .../org/apache/mahout/math/AbstractMatrix.java     |   834 -
 .../org/apache/mahout/math/AbstractVector.java     |   684 -
 .../main/java/org/apache/mahout/math/Algebra.java  |    73 -
 .../main/java/org/apache/mahout/math/Arrays.java   |   662 -
 .../java/org/apache/mahout/math/BinarySearch.java  |   403 -
 .../apache/mahout/math/CardinalityException.java   |    30 -
 .../main/java/org/apache/mahout/math/Centroid.java |    89 -
 .../apache/mahout/math/CholeskyDecomposition.java  |   227 -
 .../org/apache/mahout/math/ConstantVector.java     |   177 -
 .../org/apache/mahout/math/DelegatingVector.java   |   336 -
 .../java/org/apache/mahout/math/DenseMatrix.java   |   193 -
 .../apache/mahout/math/DenseSymmetricMatrix.java   |    62 -
 .../java/org/apache/mahout/math/DenseVector.java   |   442 -
 .../org/apache/mahout/math/DiagonalMatrix.java     |   378 -
 .../org/apache/mahout/math/FileBasedMatrix.java    |   185 -
 .../mahout/math/FileBasedSparseBinaryMatrix.java   |   535 -
 .../apache/mahout/math/FunctionalMatrixView.java   |    99 -
 .../org/apache/mahout/math/IndexException.java     |    30 -
 .../apache/mahout/math/LengthCachingVector.java    |    35 -
 .../main/java/org/apache/mahout/math/Matrices.java |   167 -
 .../main/java/org/apache/mahout/math/Matrix.java   |   413 -
 .../java/org/apache/mahout/math/MatrixSlice.java   |    36 -
 .../org/apache/mahout/math/MatrixTimesOps.java     |    35 -
 .../org/apache/mahout/math/MatrixVectorView.java   |   292 -
 .../java/org/apache/mahout/math/MatrixView.java    |   160 -
 .../java/org/apache/mahout/math/MurmurHash.java    |   158 -
 .../java/org/apache/mahout/math/MurmurHash3.java   |    84 -
 .../java/org/apache/mahout/math/NamedVector.java   |   328 -
 .../org/apache/mahout/math/OldQRDecomposition.java |   219 -
 .../mahout/math/OrderedIntDoubleMapping.java       |   265 -
 .../apache/mahout/math/OrthonormalityVerifier.java |    46 -
 .../org/apache/mahout/math/PermutedVectorView.java |   250 -
 .../org/apache/mahout/math/PersistentObject.java   |    40 -
 .../java/org/apache/mahout/math/PivotedMatrix.java |   288 -
 core/src/main/java/org/apache/mahout/math/QR.java  |    27 -
 .../org/apache/mahout/math/QRDecomposition.java    |   166 -
 .../mahout/math/RandomAccessSparseVector.java      |   303 -
 .../apache/mahout/math/RandomTrinaryMatrix.java    |   146 -
 .../mahout/math/SequentialAccessSparseVector.java  |   379 -
 .../mahout/math/SingularValueDecomposition.java    |   654 -
 .../main/java/org/apache/mahout/math/Sorting.java  |  2297 -
 .../org/apache/mahout/math/SparseColumnMatrix.java |   220 -
 .../java/org/apache/mahout/math/SparseMatrix.java  |   245 -
 .../org/apache/mahout/math/SparseRowMatrix.java    |   289 -
 .../main/java/org/apache/mahout/math/Swapper.java  |    18 -
 .../apache/mahout/math/TransposedMatrixView.java   |   147 -
 .../org/apache/mahout/math/UpperTriangular.java    |   160 -
 .../main/java/org/apache/mahout/math/Vector.java   |   434 -
 .../apache/mahout/math/VectorBinaryAggregate.java  |   481 -
 .../org/apache/mahout/math/VectorBinaryAssign.java |   667 -
 .../org/apache/mahout/math/VectorIterable.java     |    56 -
 .../java/org/apache/mahout/math/VectorView.java    |   238 -
 .../org/apache/mahout/math/WeightedVector.java     |    87 -
 .../mahout/math/WeightedVectorComparator.java      |    54 -
 .../math/als/AlternatingLeastSquaresSolver.java    |   116 -
 ...licitFeedbackAlternatingLeastSquaresSolver.java |   171 -
 .../mahout/math/decomposer/AsyncEigenVerifier.java |    80 -
 .../apache/mahout/math/decomposer/EigenStatus.java |    50 -
 .../math/decomposer/SimpleEigenVerifier.java       |    41 -
 .../math/decomposer/SingularVectorVerifier.java    |    25 -
 .../math/decomposer/hebbian/EigenUpdater.java      |    25 -
 .../math/decomposer/hebbian/HebbianSolver.java     |   342 -
 .../math/decomposer/hebbian/HebbianUpdater.java    |    71 -
 .../math/decomposer/hebbian/TrainingState.java     |   143 -
 .../math/decomposer/lanczos/LanczosSolver.java     |   213 -
 .../math/decomposer/lanczos/LanczosState.java      |   107 -
 .../org/apache/mahout/math/flavor/BackEnum.java    |    26 -
 .../apache/mahout/math/flavor/MatrixFlavor.java    |    82 -
 .../math/flavor/TraversingStructureEnum.java       |    48 -
 .../mahout/math/function/DoubleDoubleFunction.java |    81 -
 .../mahout/math/function/DoubleFunction.java       |    29 -
 .../apache/mahout/math/function/FloatFunction.java |    36 -
 .../org/apache/mahout/math/function/Functions.java |  1713 -
 .../apache/mahout/math/function/IntFunction.java   |    24 -
 .../mahout/math/function/IntIntDoubleFunction.java |    26 -
 .../mahout/math/function/IntIntFunction.java       |    25 -
 .../java/org/apache/mahout/math/function/Mult.java |    54 -
 .../math/function/ObjectObjectProcedure.java       |    40 -
 .../mahout/math/function/ObjectProcedure.java      |    29 -
 .../org/apache/mahout/math/function/PlusMult.java  |   106 -
 .../mahout/math/function/SquareRootFunction.java   |    26 -
 .../apache/mahout/math/function/TimesFunction.java |    78 -
 .../mahout/math/function/VectorFunction.java       |    27 -
 .../apache/mahout/math/function/package-info.java  |    20 -
 .../apache/mahout/math/jet/math/Arithmetic.java    |   310 -
 .../org/apache/mahout/math/jet/math/Constants.java |    30 -
 .../apache/mahout/math/jet/math/Polynomial.java    |    81 -
 .../apache/mahout/math/jet/math/package-info.java  |    21 -
 .../jet/random/AbstractContinousDistribution.java  |    33 -
 .../jet/random/AbstractDiscreteDistribution.java   |    27 -
 .../math/jet/random/AbstractDistribution.java      |    70 -
 .../apache/mahout/math/jet/random/Exponential.java |    81 -
 .../org/apache/mahout/math/jet/random/Gamma.java   |   285 -
 .../mahout/math/jet/random/NegativeBinomial.java   |   106 -
 .../org/apache/mahout/math/jet/random/Normal.java  |   110 -
 .../org/apache/mahout/math/jet/random/Poisson.java |   296 -
 .../org/apache/mahout/math/jet/random/Uniform.java |   164 -
 .../math/jet/random/engine/MersenneTwister.java    |   258 -
 .../math/jet/random/engine/RandomEngine.java       |   151 -
 .../math/jet/random/engine/package-info.java       |    23 -
 .../math/jet/random/sampling/RandomSampler.java    |   503 -
 .../org/apache/mahout/math/jet/stat/Gamma.java     |   664 -
 .../apache/mahout/math/jet/stat/Probability.java   |   186 -
 .../apache/mahout/math/jet/stat/package-info.java  |    21 -
 .../org/apache/mahout/math/list/AbstractList.java  |   221 -
 .../mahout/math/list/AbstractObjectList.java       |    62 -
 .../apache/mahout/math/list/ObjectArrayList.java   |   401 -
 .../mahout/math/list/SimpleLongArrayList.java      |   102 -
 .../org/apache/mahout/math/list/package-info.java  |   160 -
 .../org/apache/mahout/math/map/HashFunctions.java  |   115 -
 .../org/apache/mahout/math/map/OpenHashMap.java    |   633 -
 .../org/apache/mahout/math/map/PrimeFinder.java    |   145 -
 .../mahout/math/map/QuickOpenIntIntHashMap.java    |   215 -
 .../org/apache/mahout/math/map/package-info.java   |   266 -
 .../java/org/apache/mahout/math/package-info.java  |    20 -
 .../math/random/AbstractSamplerFunction.java       |    39 -
 .../mahout/math/random/ChineseRestaurant.java      |   111 -
 .../org/apache/mahout/math/random/Empirical.java   |   124 -
 .../apache/mahout/math/random/IndianBuffet.java    |   157 -
 .../org/apache/mahout/math/random/Missing.java     |    59 -
 .../org/apache/mahout/math/random/MultiNormal.java |   118 -
 .../org/apache/mahout/math/random/Multinomial.java |   202 -
 .../java/org/apache/mahout/math/random/Normal.java |    40 -
 .../apache/mahout/math/random/PoissonSampler.java  |    67 -
 .../org/apache/mahout/math/random/Sampler.java     |    25 -
 .../apache/mahout/math/random/WeightedThing.java   |    71 -
 .../org/apache/mahout/math/set/AbstractSet.java    |   172 -
 .../java/org/apache/mahout/math/set/HashUtils.java |    56 -
 .../org/apache/mahout/math/set/OpenHashSet.java    |   548 -
 .../math/solver/ConjugateGradientSolver.java       |   213 -
 .../mahout/math/solver/EigenDecomposition.java     |   892 -
 .../mahout/math/solver/JacobiConditioner.java      |    47 -
 .../java/org/apache/mahout/math/solver/LSMR.java   |   565 -
 .../apache/mahout/math/solver/Preconditioner.java  |    36 -
 .../apache/mahout/math/ssvd/SequentialBigSvd.java  |    69 -
 .../apache/mahout/math/stats/LogLikelihood.java    |   220 -
 .../math/stats/OnlineExponentialAverage.java       |    62 -
 .../apache/mahout/math/stats/OnlineSummarizer.java |    93 -
 .../classifier/naivebayes/NBClassifier.scala       |   119 -
 .../mahout/classifier/naivebayes/NBModel.scala     |   215 -
 .../mahout/classifier/naivebayes/NaiveBayes.scala  |   383 -
 .../mahout/classifier/stats/ClassifierStats.scala  |   467 -
 .../mahout/classifier/stats/ConfusionMatrix.scala  |   459 -
 .../common/io/GenericMatrixKryoSerializer.scala    |   188 -
 .../mahout/common/io/VectorKryoSerializer.scala    |   248 -
 .../scala/org/apache/mahout/logging/package.scala  |    73 -
 .../org/apache/mahout/math/algorithms/Fitter.scala |    27 -
 .../org/apache/mahout/math/algorithms/Model.scala  |    26 -
 .../mahout/math/algorithms/SupervisedFitter.scala  |    29 -
 .../mahout/math/algorithms/SupervisedModel.scala   |    26 -
 .../math/algorithms/UnsupervisedFitter.scala       |    28 -
 .../mahout/math/algorithms/UnsupervisedModel.scala |    24 -
 .../mahout/math/algorithms/clustering/Canopy.scala |   155 -
 .../algorithms/clustering/ClusteringModel.scala    |    45 -
 .../common/distance/DistanceMetrics.scala          |    48 -
 .../math/algorithms/preprocessing/AsFactor.scala   |   127 -
 .../math/algorithms/preprocessing/MeanCenter.scala |    91 -
 .../preprocessing/PreprocessorModel.scala          |    58 -
 .../algorithms/preprocessing/StandardScaler.scala  |   108 -
 .../regression/CochraneOrcuttModel.scala           |   151 -
 .../regression/LinearRegressorModel.scala          |   178 -
 .../regression/OrdinaryLeastSquaresModel.scala     |    71 -
 .../algorithms/regression/RegressorModel.scala     |    66 -
 .../regression/tests/AutocorrelationTests.scala    |    57 -
 .../regression/tests/FittnessTests.scala           |   129 -
 .../org/apache/mahout/math/backend/Backend.scala   |    49 -
 .../mahout/math/backend/RootSolverFactory.scala    |    84 -
 .../apache/mahout/math/backend/SolverFactory.scala |    71 -
 .../mahout/math/backend/incore/package.scala       |    33 -
 .../mahout/math/backend/jvm/JvmBackend.scala       |    67 -
 .../apache/mahout/math/cf/SimilarityAnalysis.scala |   453 -
 .../apache/mahout/math/decompositions/ALS.scala    |   141 -
 .../apache/mahout/math/decompositions/DQR.scala    |    78 -
 .../apache/mahout/math/decompositions/DSPCA.scala  |   162 -
 .../apache/mahout/math/decompositions/DSSVD.scala  |   116 -
 .../apache/mahout/math/decompositions/SSVD.scala   |   167 -
 .../mahout/math/decompositions/package.scala       |   141 -
 .../scala/org/apache/mahout/math/drm/BCast.scala   |    24 -
 .../org/apache/mahout/math/drm/CacheHint.scala     |    36 -
 .../apache/mahout/math/drm/CheckpointedDrm.scala   |    43 -
 .../apache/mahout/math/drm/CheckpointedOps.scala   |    49 -
 .../mahout/math/drm/DistributedContext.scala       |    27 -
 .../apache/mahout/math/drm/DistributedEngine.scala |   268 -
 .../mahout/math/drm/DrmDoubleScalarOps.scala       |    37 -
 .../scala/org/apache/mahout/math/drm/DrmLike.scala |    60 -
 .../org/apache/mahout/math/drm/DrmLikeOps.scala    |   140 -
 .../org/apache/mahout/math/drm/RLikeDrmOps.scala   |   172 -
 .../mahout/math/drm/logical/AbstractBinaryOp.scala |    44 -
 .../mahout/math/drm/logical/AbstractUnaryOp.scala  |    32 -
 .../mahout/math/drm/logical/CheckpointAction.scala |    48 -
 .../org/apache/mahout/math/drm/logical/OpAB.scala  |    47 -
 .../mahout/math/drm/logical/OpABAnyKey.scala       |    48 -
 .../org/apache/mahout/math/drm/logical/OpABt.scala |    48 -
 .../apache/mahout/math/drm/logical/OpAewB.scala    |    52 -
 .../mahout/math/drm/logical/OpAewScalar.scala      |    55 -
 .../mahout/math/drm/logical/OpAewUnaryFunc.scala   |    50 -
 .../math/drm/logical/OpAewUnaryFuncFusion.scala    |    67 -
 .../org/apache/mahout/math/drm/logical/OpAt.scala  |    43 -
 .../org/apache/mahout/math/drm/logical/OpAtA.scala |    42 -
 .../mahout/math/drm/logical/OpAtAnyKey.scala       |    40 -
 .../org/apache/mahout/math/drm/logical/OpAtB.scala |    48 -
 .../org/apache/mahout/math/drm/logical/OpAtx.scala |    49 -
 .../org/apache/mahout/math/drm/logical/OpAx.scala  |    48 -
 .../apache/mahout/math/drm/logical/OpCbind.scala   |    48 -
 .../mahout/math/drm/logical/OpCbindScalar.scala    |    42 -
 .../mahout/math/drm/logical/OpMapBlock.scala       |    48 -
 .../org/apache/mahout/math/drm/logical/OpPar.scala |    39 -
 .../apache/mahout/math/drm/logical/OpRbind.scala   |    46 -
 .../mahout/math/drm/logical/OpRowRange.scala       |    44 -
 .../math/drm/logical/OpTimesLeftMatrix.scala       |    51 -
 .../math/drm/logical/OpTimesRightMatrix.scala      |    51 -
 .../apache/mahout/math/drm/logical/TEwFunc.scala   |    37 -
 .../scala/org/apache/mahout/math/drm/package.scala |   375 -
 .../apache/mahout/math/indexeddataset/BiMap.scala  |   128 -
 .../math/indexeddataset/IndexedDataset.scala       |    61 -
 .../mahout/math/indexeddataset/ReaderWriter.scala  |   117 -
 .../apache/mahout/math/indexeddataset/Schema.scala |   105 -
 .../scala/org/apache/mahout/math/package.scala     |    21 -
 .../apache/mahout/math/scalabindings/MMul.scala    |   295 -
 .../math/scalabindings/MahoutCollections.scala     |    46 -
 .../math/scalabindings/MatlabLikeMatrixOps.scala   |    66 -
 .../mahout/math/scalabindings/MatlabLikeOps.scala  |    35 -
 .../math/scalabindings/MatlabLikeTimesOps.scala    |    28 -
 .../math/scalabindings/MatlabLikeVectorOps.scala   |    73 -
 .../mahout/math/scalabindings/MatrixOps.scala      |   332 -
 .../math/scalabindings/RLikeDoubleScalarOps.scala  |    63 -
 .../mahout/math/scalabindings/RLikeMatrixOps.scala |   172 -
 .../mahout/math/scalabindings/RLikeOps.scala       |    38 -
 .../mahout/math/scalabindings/RLikeVectorOps.scala |   110 -
 .../mahout/math/scalabindings/VectorOps.scala      |   174 -
 .../apache/mahout/math/scalabindings/package.scala |   477 -
 .../scala/org/apache/mahout/nlp/tfidf/TFIDF.scala  |   112 -
 .../org/apache/mahout/util/IOUtilsScala.scala      |    64 -
 .../mahout/math/list/ValueTypeArrayListTest.java.t |   237 -
 .../math/map/OpenKeyTypeObjectHashMapTest.java.t   |   431 -
 .../map/OpenKeyTypeValueTypeHashMapTest.java.t     |   379 -
 .../math/map/OpenObjectValueTypeHashMapTest.java.t |   423 -
 .../mahout/math/set/OpenKeyTypeHashSetTest.java.t  |   179 -
 .../org/apache/mahout/common/RandomUtilsTest.java  |    81 -
 .../org/apache/mahout/math/AbstractVectorTest.java |   658 -
 .../java/org/apache/mahout/math/CentroidTest.java  |    72 -
 .../mahout/math/CholeskyDecompositionTest.java     |   152 -
 .../org/apache/mahout/math/DenseSymmetricTest.java |    65 -
 .../org/apache/mahout/math/DiagonalMatrixTest.java |    92 -
 .../apache/mahout/math/FileBasedMatrixTest.java    |    89 -
 .../math/FileBasedSparseBinaryMatrixTest.java      |    95 -
 .../java/org/apache/mahout/math/FunctionTest.java  |   133 -
 .../org/apache/mahout/math/MahoutTestCase.java     |   109 -
 .../java/org/apache/mahout/math/MatricesTest.java  |   123 -
 .../java/org/apache/mahout/math/MatrixTest.java    |   645 -
 .../apache/mahout/math/MatrixVectorViewTest.java   |    58 -
 .../org/apache/mahout/math/MurmurHash3Test.java    |    48 -
 .../org/apache/mahout/math/MurmurHashTest.java     |   120 -
 .../apache/mahout/math/OldQRDecompositionTest.java |   187 -
 .../apache/mahout/math/PermutedVectorViewTest.java |   105 -
 .../org/apache/mahout/math/PivotedMatrixTest.java  |    65 -
 .../apache/mahout/math/QRDecompositionTest.java    |   280 -
 .../org/apache/mahout/math/TestDenseMatrix.java    |    45 -
 .../org/apache/mahout/math/TestDenseVector.java    |    47 -
 .../org/apache/mahout/math/TestMatrixView.java     |   470 -
 .../mahout/math/TestOrderedIntDoubleMapping.java   |   104 -
 .../mahout/math/TestRandomAccessSparseVector.java  |    65 -
 .../math/TestSequentialAccessSparseVector.java     |    62 -
 .../math/TestSingularValueDecomposition.java       |   327 -
 .../apache/mahout/math/TestSparseColumnMatrix.java |    37 -
 .../org/apache/mahout/math/TestSparseMatrix.java   |   101 -
 .../apache/mahout/math/TestSparseRowMatrix.java    |   180 -
 .../org/apache/mahout/math/TestVectorView.java     |   314 -
 .../apache/mahout/math/UpperTriangularTest.java    |    54 -
 .../mahout/math/VectorBinaryAggregateCostTest.java |   330 -
 .../mahout/math/VectorBinaryAggregateTest.java     |   143 -
 .../mahout/math/VectorBinaryAssignCostTest.java    |   243 -
 .../apache/mahout/math/VectorBinaryAssignTest.java |    75 -
 .../java/org/apache/mahout/math/VectorTest.java    |  1135 -
 .../org/apache/mahout/math/WeightedVectorTest.java |    88 -
 .../als/AlternatingLeastSquaresSolverTest.java     |   151 -
 .../apache/mahout/math/decomposer/SolverTest.java  |   177 -
 .../math/decomposer/hebbian/TestHebbianSolver.java |   207 -
 .../math/decomposer/lanczos/TestLanczosSolver.java |    97 -
 .../mahout/math/jet/random/DistributionChecks.java |   118 -
 .../mahout/math/jet/random/ExponentialTest.java    |   102 -
 .../apache/mahout/math/jet/random/GammaTest.java   |   131 -
 .../math/jet/random/NegativeBinomialTest.java      |    60 -
 .../apache/mahout/math/jet/random/NormalTest.java  |    71 -
 .../jet/random/engine/MersenneTwisterTest.java     |   704 -
 .../org/apache/mahout/math/jet/stat/GammaTest.java |   138 -
 .../mahout/math/jet/stat/ProbabilityTest.java      |   196 -
 .../mahout/math/list/ObjectArrayListTest.java      |    51 -
 .../mahout/math/random/ChineseRestaurantTest.java  |   158 -
 .../apache/mahout/math/random/EmpiricalTest.java   |    78 -
 .../mahout/math/random/IndianBuffetTest.java       |    43 -
 .../apache/mahout/math/random/MultiNormalTest.java |    81 -
 .../apache/mahout/math/random/MultinomialTest.java |   269 -
 .../org/apache/mahout/math/random/NormalTest.java  |    62 -
 .../mahout/math/random/PoissonSamplerTest.java     |    56 -
 .../mahout/math/randomized/RandomBlasting.java     |   355 -
 .../org/apache/mahout/math/set/HashUtilsTest.java  |    90 -
 .../mahout/math/solver/EigenDecompositionTest.java |   120 -
 .../org/apache/mahout/math/solver/LSMRTest.java    |   105 -
 .../math/solver/TestConjugateGradientSolver.java   |   231 -
 .../mahout/math/ssvd/SequentialBigSvdTest.java     |    86 -
 .../mahout/math/stats/LogLikelihoodTest.java       |   197 -
 .../math/stats/OnlineExponentialAverageTest.java   |    69 -
 .../mahout/math/stats/OnlineSummarizerTest.java    |   108 -
 core/src/test/resources/beta-test-data.csv         |  1005 -
 core/src/test/resources/hanging-svd.tsv            |    90 -
 .../test/resources/negative-binomial-test-data.csv |    62 -
 core/src/test/resources/words.txt                  |  1168 -
 .../mahout/classifier/naivebayes/NBTestBase.scala  |   291 -
 .../classifier/stats/ClassifierStatsTestBase.scala |   257 -
 .../math/algorithms/ClusteringSuiteBase.scala      |    48 -
 .../math/algorithms/PreprocessorSuiteBase.scala    |   118 -
 .../math/algorithms/RegressionTestsSuiteBase.scala |   126 -
 .../apache/mahout/math/backend/BackendSuite.scala  |    75 -
 .../math/decompositions/DecompositionsSuite.scala  |   113 -
 .../DistributedDecompositionsSuiteBase.scala       |   219 -
 .../mahout/math/drm/DrmLikeOpsSuiteBase.scala      |   153 -
 .../apache/mahout/math/drm/DrmLikeSuiteBase.scala  |    74 -
 .../mahout/math/drm/RLikeDrmOpsSuiteBase.scala     |   655 -
 .../scalabindings/MahoutCollectionsSuite.scala     |    42 -
 .../mahout/math/scalabindings/MathSuite.scala      |   267 -
 .../scalabindings/MatlabLikeMatrixOpsSuite.scala   |    67 -
 .../mahout/math/scalabindings/MatrixOpsSuite.scala |   228 -
 .../math/scalabindings/RLikeMatrixOpsSuite.scala   |   369 -
 .../math/scalabindings/RLikeVectorOpsSuite.scala   |    72 -
 .../mahout/math/scalabindings/VectorOpsSuite.scala |   110 -
 .../apache/mahout/nlp/tfidf/TFIDFtestBase.scala    |   184 -
 .../mahout/test/DistributedMahoutSuite.scala       |    28 -
 .../apache/mahout/test/LoggerConfiguration.scala   |    32 -
 .../scala/org/apache/mahout/test/MahoutSuite.scala |    54 -
 developers/buildingmahout.html                     |     2 +-
 developers/developer-resources.html                |     2 +-
 developers/github.html                             |     2 +-
 developers/githubPRs.html                          |     2 +-
 developers/gsoc.html                               |     2 +-
 developers/how-to-become-a-committer.html          |     2 +-
 developers/how-to-contribute.html                  |     2 +-
 developers/how-to-release.html                     |     2 +-
 developers/how-to-update-the-website.html          |     2 +-
 developers/issue-tracker.html                      |     2 +-
 developers/patch-check-list.html                   |     2 +-
 developers/thirdparty-dependencies.html            |     2 +-
 developers/version-control.html                    |     2 +-
 distribution/KEYS                                  |  1060 -
 distribution/pom.xml                               |   154 -
 distribution/src/main/assembly/bin.xml             |    66 -
 .../examples/bin/SparseSparseDrmTimer.mscala       |    52 -
 .../resources/default/examples/bin/basicOLS.scala  |    75 -
 .../default/examples/bin/cco-lastfm.scala          |   112 -
 .../examples/bin/resources/cf-data-purchase.txt    |     7 -
 .../examples/bin/resources/cf-data-view.txt        |    12 -
 .../resources/default/examples/bin/run-item-sim.sh |    85 -
 .../examples/bin/spark-document-classifier.mscala  |   204 -
 .../resources/executable/bin/compute-classpath.sh  |   191 -
 .../main/resources/executable/bin/load-shell.scala |    34 -
 .../src/main/resources/executable/bin/mahout       |   343 -
 .../executable/bin/mahout-load-spark-env.sh        |    40 -
 .../resources/executable/bin/mahout-spark-class.sh |    80 -
 .../src/main/resources/executable/bin/mahout.cmd   |   397 -
 .../resources/executable/conf/log4j.properties     |    30 -
 doap_Mahout.rdf                                    |    51 -
 docker/build/Dockerfile                            |    22 -
 docker/build/README.md                             |    68 -
 docker/getting-started/Dockerfile                  |   147 -
 docker/getting-started/log4j.properties            |    22 -
 docker/getting-started/readme.md                   |    22 -
 .../latest/algorithms/clustering/canopy/index.html |     2 +-
 .../algorithms/clustering/distance-metrics.html    |     2 +-
 docs/latest/algorithms/clustering/index.html       |     2 +-
 docs/latest/algorithms/linear-algebra/d-qr.html    |     2 +-
 docs/latest/algorithms/linear-algebra/d-spca.html  |     2 +-
 docs/latest/algorithms/linear-algebra/d-ssvd.html  |     2 +-
 docs/latest/algorithms/linear-algebra/index.html   |     2 +-
 .../map-reduce/classification/bayesian.html        |     2 +-
 .../map-reduce/classification/class-discovery.html |     2 +-
 .../classification/classifyingyourdata.html        |     2 +-
 .../map-reduce/classification/collocations.html    |     2 +-
 .../gaussian-discriminative-analysis.html          |     2 +-
 .../classification/hidden-markov-models.html       |     2 +-
 .../independent-component-analysis.html            |     2 +-
 .../locally-weighted-linear-regression.html        |     2 +-
 .../classification/logistic-regression.html        |     2 +-
 .../classification/mahout-collections.html         |     2 +-
 .../algorithms/map-reduce/classification/mlp.html  |     2 +-
 .../map-reduce/classification/naivebayes.html      |     2 +-
 .../map-reduce/classification/neural-network.html  |     2 +-
 .../classification/partial-implementation.html     |     2 +-
 .../map-reduce/classification/random-forests.html  |     2 +-
 .../restricted-boltzmann-machines.html             |     2 +-
 .../classification/support-vector-machines.html    |     2 +-
 .../map-reduce/clustering/canopy-clustering.html   |     2 +-
 .../map-reduce/clustering/cluster-dumper.html      |     2 +-
 .../clustering/expectation-maximization.html       |     2 +-
 .../map-reduce/clustering/fuzzy-k-means.html       |     2 +-
 .../clustering/hierarchical-clustering.html        |     2 +-
 .../map-reduce/clustering/k-means-clustering.html  |     2 +-
 .../clustering/latent-dirichlet-allocation.html    |     2 +-
 .../clustering/llr---log-likelihood-ratio.html     |     2 +-
 .../map-reduce/clustering/spectral-clustering.html |     2 +-
 .../map-reduce/clustering/streaming-k-means.html   |     2 +-
 docs/latest/algorithms/map-reduce/index.html       |     2 +-
 docs/latest/algorithms/preprocessors/AsFactor.html |     2 +-
 .../algorithms/preprocessors/MeanCenter.html       |     2 +-
 .../algorithms/preprocessors/StandardScaler.html   |     2 +-
 docs/latest/algorithms/preprocessors/index.html    |     2 +-
 docs/latest/algorithms/recommenders/cco.html       |     2 +-
 docs/latest/algorithms/recommenders/d-als.html     |     2 +-
 docs/latest/algorithms/recommenders/index.html     |     2 +-
 .../algorithms/regression/fittness-tests.html      |     2 +-
 docs/latest/algorithms/regression/index.html       |     2 +-
 docs/latest/algorithms/regression/ols.html         |     2 +-
 .../algorithms/regression/{ols.html => ridge.html} |    59 +-
 .../serial-correlation/cochrane-orcutt.html        |     2 +-
 .../regression/serial-correlation/dw-test.html     |     2 +-
 docs/latest/algorithms/template.html               |     2 +-
 docs/latest/changelog.html                         |     2 +-
 docs/latest/distributed/flink-bindings.html        |     2 +-
 docs/latest/distributed/h2o-internals.html         |     2 +-
 docs/latest/distributed/spark-bindings/faq.html    |     2 +-
 docs/latest/distributed/spark-bindings/index.html  |     2 +-
 docs/latest/index.html                             |     2 +-
 docs/latest/mahout-samsara/faq.html                |     2 +-
 docs/latest/mahout-samsara/in-core-reference.html  |     2 +-
 .../mahout-samsara/out-of-core-reference.html      |     2 +-
 docs/latest/native-solvers/cuda.html               |     2 +-
 docs/latest/native-solvers/viennacl-omp.html       |     2 +-
 docs/latest/native-solvers/viennacl.html           |     2 +-
 docs/latest/quickstart.html                        |     2 +-
 docs/latest/tutorials/cco-lastfm/index.html        |     2 +-
 docs/latest/tutorials/eigenfaces/index.html        |     2 +-
 .../tutorials/intro-cooccurrence-spark/index.html  |     2 +-
 .../classification/bankmarketing-example.html      |     2 +-
 .../map-reduce/classification/breiman-example.html |     2 +-
 .../classification/twenty-newsgroups.html          |     2 +-
 .../wikipedia-classifier-example.html              |     2 +-
 .../map-reduce/clustering/20newsgroups.html        |     2 +-
 .../map-reduce/clustering/canopy-commandline.html  |     2 +-
 .../clustering-of-synthetic-control-data.html      |     2 +-
 .../clustering/clustering-seinfeld-episodes.html   |     2 +-
 .../map-reduce/clustering/clusteringyourdata.html  |     2 +-
 .../clustering/fuzzy-k-means-commandline.html      |     2 +-
 .../map-reduce/clustering/k-means-commandline.html |     2 +-
 .../map-reduce/clustering/lda-commandline.html     |     2 +-
 .../map-reduce/clustering/viewing-result.html      |     2 +-
 .../map-reduce/clustering/viewing-results.html     |     2 +-
 .../clustering/visualizing-sample-clusters.html    |     2 +-
 docs/latest/tutorials/map-reduce/index.html        |     2 +-
 .../tutorials/map-reduce/misc/mr---map-reduce.html |     2 +-
 .../misc/parallel-frequent-pattern-mining.html     |     2 +-
 .../map-reduce/misc/perceptron-and-winnow.html     |     2 +-
 docs/latest/tutorials/map-reduce/misc/testing.html |     2 +-
 .../misc/using-mahout-with-python-via-jpype.html   |     2 +-
 .../map-reduce/recommender/intro-als-hadoop.html   |     2 +-
 .../recommender/intro-cooccurrence-spark.html      |     2 +-
 .../recommender/intro-itembased-hadoop.html        |     2 +-
 .../recommender/matrix-factorization.html          |     2 +-
 .../map-reduce/recommender/quickstart.html         |     2 +-
 .../recommender/recommender-documentation.html     |     2 +-
 .../recommender/recommender-first-timer-faq.html   |     2 +-
 .../recommender/userbased-5-minutes.html           |     2 +-
 .../tutorials/misc/contributing-algos/index.html   |     2 +-
 .../misc/getting-started-with-zeppelin/index.html  |     2 +-
 .../latest/tutorials/misc/how-to-build-an-app.html |     2 +-
 .../tutorials/misc/mahout-in-zeppelin/index.html   |     2 +-
 .../samsara/classify-a-doc-from-the-shell.html     |     2 +-
 docs/latest/tutorials/samsara/play-with-shell.html |     2 +-
 .../samsara/playing-with-samsara-flink-batch.html  |     2 +-
 .../tutorials/samsara/spark-naive-bayes.html       |     2 +-
 engine/hdfs/pom.xml                                |    99 -
 .../java/org/apache/mahout/common/IOUtils.java     |   194 -
 .../org/apache/mahout/math/MatrixWritable.java     |   202 -
 .../org/apache/mahout/math/VarIntWritable.java     |    86 -
 .../org/apache/mahout/math/VarLongWritable.java    |    83 -
 .../main/java/org/apache/mahout/math/Varint.java   |   167 -
 .../org/apache/mahout/math/VectorWritable.java     |   267 -
 .../org/apache/mahout/math/MatrixWritableTest.java |   143 -
 .../java/org/apache/mahout/math/VarintTest.java    |   189 -
 .../org/apache/mahout/math/VectorWritableTest.java |   116 -
 engine/pom.xml                                     |    40 -
 engine/spark/pom.xml                               |   198 -
 .../spark/src/main/assembly/dependency-reduced.xml |    51 -
 .../classifier/naivebayes/SparkNaiveBayes.scala    |   170 -
 .../org/apache/mahout/common/DrmMetadata.scala     |    73 -
 .../org/apache/mahout/common/HDFSPathSearch.scala  |    81 -
 .../scala/org/apache/mahout/common/HDFSUtil.scala  |    28 -
 .../org/apache/mahout/common/Hadoop2HDFSUtil.scala |    83 -
 .../sparkbindings/SparkDistributedContext.scala    |    30 -
 .../apache/mahout/sparkbindings/SparkEngine.scala  |   387 -
 .../org/apache/mahout/sparkbindings/blas/ABt.scala |   352 -
 .../apache/mahout/sparkbindings/blas/AewB.scala    |   239 -
 .../mahout/sparkbindings/blas/AinCoreB.scala       |    79 -
 .../org/apache/mahout/sparkbindings/blas/At.scala  |    85 -
 .../org/apache/mahout/sparkbindings/blas/AtA.scala |   271 -
 .../org/apache/mahout/sparkbindings/blas/AtB.scala |   358 -
 .../org/apache/mahout/sparkbindings/blas/Ax.scala  |    79 -
 .../apache/mahout/sparkbindings/blas/CbindAB.scala |   126 -
 .../mahout/sparkbindings/blas/DrmRddOps.scala      |    43 -
 .../mahout/sparkbindings/blas/MapBlock.scala       |    43 -
 .../org/apache/mahout/sparkbindings/blas/Par.scala |    72 -
 .../apache/mahout/sparkbindings/blas/RbindAB.scala |    50 -
 .../apache/mahout/sparkbindings/blas/Slicing.scala |    43 -
 .../apache/mahout/sparkbindings/blas/package.scala |   217 -
 .../sparkbindings/drm/CheckpointedDrmSpark.scala   |   224 -
 .../drm/CheckpointedDrmSparkOps.scala              |    32 -
 .../mahout/sparkbindings/drm/DrmRddInput.scala     |    41 -
 .../mahout/sparkbindings/drm/SparkBCast.scala      |    27 -
 .../apache/mahout/sparkbindings/drm/package.scala  |   112 -
 .../indexeddataset/IndexedDatasetSpark.scala       |   127 -
 .../indexeddataset/TextDelimitedReaderWriter.scala |   336 -
 .../sparkbindings/io/MahoutKryoRegistrator.scala   |    76 -
 .../sparkbindings/io/UnsupportedSerializer.scala   |    31 -
 .../sparkbindings/io/WritableKryoSerializer.scala  |    47 -
 .../org/apache/mahout/sparkbindings/package.scala  |   303 -
 .../apache/mahout/cf/SimilarityAnalysisSuite.scala |   447 -
 .../classifier/naivebayes/NBSparkTestSuite.scala   |   159 -
 .../stats/ClassifierStatsSparkTestSuite.scala      |    26 -
 .../mahout/math/algorithms/ClusteringSuite.scala   |    25 -
 .../mahout/math/algorithms/PreprocessorSuite.scala |    24 -
 .../mahout/math/algorithms/RegressionSuite.scala   |    25 -
 .../math/algorithms/RegressionTestsSuite.scala     |    25 -
 .../DistributedDecompositionsSuite.scala           |    32 -
 .../mahout/nlp/tfidf/TFIDFSparkTestSuite.scala     |    25 -
 .../mahout/sparkbindings/SparkBindingsSuite.scala  |    52 -
 .../mahout/sparkbindings/blas/BlasSuite.scala      |   208 -
 .../mahout/sparkbindings/drm/DrmLikeOpsSuite.scala |    57 -
 .../mahout/sparkbindings/drm/DrmLikeSuite.scala    |   162 -
 .../sparkbindings/drm/RLikeDrmOpsSuite.scala       |   179 -
 .../apache/mahout/sparkbindings/io/IOSuite.scala   |   195 -
 .../sparkbindings/test/DistributedSparkSuite.scala |    83 -
 .../sparkbindings/test/LoggerConfiguration.scala   |    30 -
 experimental/pom.xml                               |    41 -
 experimental/viennacl-omp/linux-haswell.properties |    47 -
 .../viennacl-omp/linux-x86_64-viennacl.properties  |    43 -
 experimental/viennacl-omp/pom.xml                  |   222 -
 .../mahout/viennacl/openmp/javacpp/Functions.java  |   103 -
 .../viennacl/openmp/javacpp/LinalgFunctions.java   |    86 -
 .../openmp/javacpp/MatrixTransExpression.scala     |    34 -
 .../apache/mahout/viennacl/openmp/OMPMMul.scala    |   449 -
 .../viennacl/openmp/javacpp/CompressedMatrix.scala |   135 -
 .../mahout/viennacl/openmp/javacpp/Context.scala   |    74 -
 .../openmp/javacpp/DenseColumnMatrix.scala         |    95 -
 .../viennacl/openmp/javacpp/DenseRowMatrix.scala   |    97 -
 .../openmp/javacpp/MatMatProdExpression.scala      |    33 -
 .../openmp/javacpp/MatVecProdExpression.scala      |    33 -
 .../viennacl/openmp/javacpp/MatrixBase.scala       |    75 -
 .../mahout/viennacl/openmp/javacpp/MemHandle.scala |    34 -
 .../viennacl/openmp/javacpp/ProdExpression.scala   |    33 -
 .../openmp/javacpp/SrMatDnMatProdExpression.scala  |    33 -
 .../mahout/viennacl/openmp/javacpp/VCLVector.scala |   140 -
 .../openmp/javacpp/VecMultExpression.scala         |    32 -
 .../viennacl/openmp/javacpp/VectorBase.scala       |    55 -
 .../apache/mahout/viennacl/openmp/package.scala    |   450 -
 .../mahout/viennacl/omp/ViennaCLSuiteOMP.scala     |   265 -
 experimental/viennacl/linux-haswell.properties     |    47 -
 .../viennacl/linux-x86_64-viennacl.properties      |    43 -
 experimental/viennacl/pom.xml                      |   224 -
 .../mahout/viennacl/opencl/javacpp/Functions.java  |   104 -
 .../viennacl/opencl/javacpp/LinalgFunctions.java   |    86 -
 .../opencl/javacpp/MatrixTransExpression.scala     |    34 -
 .../apache/mahout/viennacl/opencl/GPUMMul.scala    |   444 -
 .../viennacl/opencl/javacpp/CompressedMatrix.scala |   135 -
 .../mahout/viennacl/opencl/javacpp/Context.scala   |    73 -
 .../opencl/javacpp/DenseColumnMatrix.scala         |    95 -
 .../viennacl/opencl/javacpp/DenseRowMatrix.scala   |    98 -
 .../opencl/javacpp/MatMatProdExpression.scala      |    33 -
 .../opencl/javacpp/MatVecProdExpression.scala      |    33 -
 .../viennacl/opencl/javacpp/MatrixBase.scala       |    75 -
 .../mahout/viennacl/opencl/javacpp/MemHandle.scala |    48 -
 .../viennacl/opencl/javacpp/ProdExpression.scala   |    33 -
 .../opencl/javacpp/SrMatDnMatProdExpression.scala  |    33 -
 .../mahout/viennacl/opencl/javacpp/VCLVector.scala |   144 -
 .../opencl/javacpp/VecMultExpression.scala         |    32 -
 .../viennacl/opencl/javacpp/VectorBase.scala       |    58 -
 .../apache/mahout/viennacl/opencl/package.scala    |   450 -
 .../mahout/viennacl/opencl/ViennaCLSuiteVCL.scala  |   441 -
 feed.xml                                           |    33 +-
 flaky-tests.adoc                                   |    20 -
 general/books-tutorials-and-talks.html             |     2 +-
 general/downloads.html                             |     2 +-
 general/faq.html                                   |     2 +-
 general/glossary.html                              |     2 +-
 general/mahout-benchmarks.html                     |     2 +-
 general/mahout-wiki.html                           |     2 +-
 general/mailing-lists.html                         |     2 +-
 general/powered-by-mahout.html                     |     2 +-
 general/privacy-policy.html                        |     2 +-
 general/professional-support.html                  |     2 +-
 general/reference-reading.html                     |     2 +-
 general/release-notes.html                         |     2 +-
 general/who-we-are.html                            |     2 +-
 index.html                                         |    48 +-
 licenses/CERN-license                              |     7 -
 licenses/MIT-license                               |    22 -
 minutes/2020/10/30/weekly-meeting-minutes.html     |     2 +-
 minutes/2020/11/06/weekly-meeting-minutes.html     |     2 +-
 minutes/2020/11/13/weekly-meeting-minutes.html     |     2 +-
 minutes/2020/11/20/weekly-meeting-minutes.html     |     2 +-
 .../{11/06 => 12/08}/weekly-meeting-minutes.html   |    42 +-
 .../{11/20 => 12/15}/weekly-meeting-minutes.html   |    20 +-
 .../20 => 2021/01/05}/weekly-meeting-minutes.html  |    25 +-
 news/2017/12/20/new-website.html                   |     2 +-
 news/2019/06/18/preping-014.html                   |     2 +-
 news/2019/12/14/version-14-1.html                  |     2 +-
 news/2020/10/18/version-14-1-released.html         |     2 +-
 pom.xml                                            |  1188 -
 release/special-checks.txt                         |   126 -
 website/Gemfile                                    |    47 -
 website/README.md                                  |    27 -
 website/_config.yml                                |    55 -
 website/_includes/analytics.html                   |     9 -
 website/_includes/doc-navbar.html                  |   127 -
 website/_includes/footer.html                      |     5 -
 website/_includes/head.html                        |    27 -
 website/_includes/navbar.html                      |   121 -
 website/_includes/posts/post-preview.html          |    34 -
 website/_includes/sidebar.html                     |    30 -
 website/_layouts/default.html                      |    22 -
 website/_layouts/doc-default.html                  |    22 -
 website/_layouts/doc-page.html                     |    15 -
 website/_layouts/home.html                         |    37 -
 website/_layouts/page.html                         |    18 -
 website/_layouts/post.html                         |    27 -
 website/_posts/2017-12-20-new-website.md           |    13 -
 website/_posts/2018-06-18-preping-014.md           |    28 -
 website/_posts/2019-12-14-version-14-1.md          |    20 -
 website/_posts/2020-10-10-version-14-1             |    11 -
 website/_posts/2020-10-18-version-14-1-released.md |    13 -
 .../_posts/2020-10-30-weekly-meeting-minutes.md    |    26 -
 .../_posts/2020-11-13-weekly-meeting-minutes.md    |    29 -
 .../_posts/2020-11-20-weekly-meeting-minutes.md    |    12 -
 website/_posts/2020-11-6-weekly-meeting-minutes.md |    30 -
 website/_sass/mahout.scss                          |    39 -
 website/_sass/mahout/_base.scss                    |    65 -
 website/_sass/mahout/_heading.scss                 |    73 -
 website/_sass/mahout/_mixins.scss                  |    24 -
 website/_sass/mahout/_navbar.scss                  |    37 -
 website/_sass/mahout/_posts.scss                   |    35 -
 website/_sass/mahout/_syntax-highlighting.scss     |    86 -
 website/assets/asf_logo.svg                        |   226 -
 website/assets/asf_logo_white.svg                  |   238 -
 website/assets/css/main.scss                       |     4 -
 website/assets/header.js                           |   219 -
 website/assets/mahout-logo-blue.svg                |    64 -
 website/assets/mahout-logo-white.svg               |    64 -
 website/assets/mahout-logo.svg                     |    64 -
 .../assets/vendor/bootstrap/js/bootstrap.min.js    |     6 -
 website/assets/vendor/bootstrap/scss/_alert.scss   |    48 -
 website/assets/vendor/bootstrap/scss/_badge.scss   |    48 -
 .../assets/vendor/bootstrap/scss/_breadcrumb.scss  |    38 -
 .../vendor/bootstrap/scss/_button-group.scss       |   198 -
 website/assets/vendor/bootstrap/scss/_buttons.scss |   141 -
 website/assets/vendor/bootstrap/scss/_card.scss    |   223 -
 .../assets/vendor/bootstrap/scss/_carousel.scss    |   185 -
 website/assets/vendor/bootstrap/scss/_close.scss   |    29 -
 website/assets/vendor/bootstrap/scss/_code.scss    |    64 -
 .../vendor/bootstrap/scss/_custom-forms.scss       |   254 -
 .../assets/vendor/bootstrap/scss/_dropdown.scss    |   123 -
 website/assets/vendor/bootstrap/scss/_forms.scss   |   390 -
 .../assets/vendor/bootstrap/scss/_functions.scss   |    90 -
 website/assets/vendor/bootstrap/scss/_grid.scss    |    53 -
 website/assets/vendor/bootstrap/scss/_images.scss  |    43 -
 .../assets/vendor/bootstrap/scss/_input-group.scss |   176 -
 .../assets/vendor/bootstrap/scss/_jumbotron.scss   |    16 -
 .../assets/vendor/bootstrap/scss/_list-group.scss  |   114 -
 website/assets/vendor/bootstrap/scss/_media.scss   |     8 -
 website/assets/vendor/bootstrap/scss/_mixins.scss  |    41 -
 website/assets/vendor/bootstrap/scss/_modal.scss   |   142 -
 website/assets/vendor/bootstrap/scss/_nav.scss     |   118 -
 website/assets/vendor/bootstrap/scss/_navbar.scss  |   287 -
 .../assets/vendor/bootstrap/scss/_pagination.scss  |    66 -
 website/assets/vendor/bootstrap/scss/_popover.scss |   195 -
 website/assets/vendor/bootstrap/scss/_print.scss   |   119 -
 .../assets/vendor/bootstrap/scss/_progress.scss    |    32 -
 website/assets/vendor/bootstrap/scss/_reboot.scss  |   481 -
 website/assets/vendor/bootstrap/scss/_tables.scss  |   168 -
 website/assets/vendor/bootstrap/scss/_tooltip.scss |   107 -
 .../assets/vendor/bootstrap/scss/_transitions.scss |    34 -
 website/assets/vendor/bootstrap/scss/_type.scss    |   123 -
 .../assets/vendor/bootstrap/scss/_utilities.scss   |    14 -
 .../assets/vendor/bootstrap/scss/_variables.scss   |   837 -
 .../vendor/bootstrap/scss/bootstrap-grid.scss      |    37 -
 .../vendor/bootstrap/scss/bootstrap-reboot.scss    |     9 -
 .../assets/vendor/bootstrap/scss/bootstrap.scss    |    41 -
 .../vendor/bootstrap/scss/mixins/_alert.scss       |    13 -
 .../bootstrap/scss/mixins/_background-variant.scss |    12 -
 .../vendor/bootstrap/scss/mixins/_badge.scss       |    12 -
 .../bootstrap/scss/mixins/_border-radius.scss      |    35 -
 .../vendor/bootstrap/scss/mixins/_box-shadow.scss  |     5 -
 .../vendor/bootstrap/scss/mixins/_breakpoints.scss |   105 -
 .../vendor/bootstrap/scss/mixins/_buttons.scss     |    83 -
 .../vendor/bootstrap/scss/mixins/_clearfix.scss    |     7 -
 .../vendor/bootstrap/scss/mixins/_float.scss       |     9 -
 .../vendor/bootstrap/scss/mixins/_forms.scss       |    81 -
 .../vendor/bootstrap/scss/mixins/_gradients.scss   |    37 -
 .../bootstrap/scss/mixins/_grid-framework.scss     |    56 -
 .../assets/vendor/bootstrap/scss/mixins/_grid.scss |    47 -
 .../vendor/bootstrap/scss/mixins/_hover.scss       |    60 -
 .../vendor/bootstrap/scss/mixins/_image.scss       |    36 -
 .../vendor/bootstrap/scss/mixins/_list-group.scss  |    26 -
 .../vendor/bootstrap/scss/mixins/_lists.scss       |     7 -
 .../vendor/bootstrap/scss/mixins/_nav-divider.scss |    10 -
 .../bootstrap/scss/mixins/_navbar-align.scss       |     9 -
 .../vendor/bootstrap/scss/mixins/_pagination.scss  |    22 -
 .../vendor/bootstrap/scss/mixins/_reset-text.scss  |    18 -
 .../vendor/bootstrap/scss/mixins/_resize.scss      |     6 -
 .../bootstrap/scss/mixins/_screen-reader.scss      |    35 -
 .../assets/vendor/bootstrap/scss/mixins/_size.scss |     6 -
 .../vendor/bootstrap/scss/mixins/_table-row.scss   |    30 -
 .../bootstrap/scss/mixins/_text-emphasis.scss      |    12 -
 .../vendor/bootstrap/scss/mixins/_text-hide.scss   |     8 -
 .../bootstrap/scss/mixins/_text-truncate.scss      |     8 -
 .../vendor/bootstrap/scss/mixins/_transition.scss  |     9 -
 .../vendor/bootstrap/scss/mixins/_visibility.scss  |     5 -
 .../vendor/bootstrap/scss/utilities/_align.scss    |     6 -
 .../bootstrap/scss/utilities/_background.scss      |     5 -
 .../vendor/bootstrap/scss/utilities/_borders.scss  |    48 -
 .../vendor/bootstrap/scss/utilities/_clearfix.scss |     3 -
 .../vendor/bootstrap/scss/utilities/_display.scss  |    53 -
 .../vendor/bootstrap/scss/utilities/_embed.scss    |    52 -
 .../vendor/bootstrap/scss/utilities/_flex.scss     |    44 -
 .../vendor/bootstrap/scss/utilities/_float.scss    |     9 -
 .../vendor/bootstrap/scss/utilities/_position.scss |    25 -
 .../bootstrap/scss/utilities/_screenreaders.scss   |    11 -
 .../vendor/bootstrap/scss/utilities/_sizing.scss   |    10 -
 .../vendor/bootstrap/scss/utilities/_spacing.scss  |    41 -
 .../vendor/bootstrap/scss/utilities/_text.scss     |    49 -
 .../bootstrap/scss/utilities/_visibility.scss      |    11 -
 website/assets/vendor/jquery/jquery-slim.min.js    |  8160 --
 website/assets/vendor/popper/popper.min.js         |     5 -
 website/build_site.sh                              |    65 -
 website/developers/buildingmahout.md               |   216 -
 website/developers/developer-resources.md          |    47 -
 website/developers/github.md                       |   157 -
 website/developers/githubPRs.md                    |    81 -
 website/developers/gsoc.md                         |    65 -
 website/developers/how-to-become-a-committer.md    |    28 -
 website/developers/how-to-contribute.md            |   154 -
 website/developers/how-to-release.md               |   158 -
 website/developers/how-to-update-the-website.md    |    72 -
 website/developers/issue-tracker.md                |    46 -
 website/developers/patch-check-list.md             |    28 -
 website/developers/thirdparty-dependencies.md      |    30 -
 website/developers/version-control.md              |    30 -
 website/docs/README.md                             |    32 -
 .../latest/algorithms/clustering/canopy/Canopy.png |   Bin 48061 -> 0 bytes
 .../algorithms/clustering/canopy/Canopy10.png      |   Bin 42414 -> 0 bytes
 .../algorithms/clustering/canopy/SampleData.png    |   Bin 32587 -> 0 bytes
 .../latest/algorithms/clustering/canopy/index.md   |   128 -
 .../algorithms/clustering/distance-metrics.md      |    82 -
 website/docs/latest/algorithms/clustering/index.md |     8 -
 .../docs/latest/algorithms/linear-algebra/d-qr.md  |    64 -
 .../latest/algorithms/linear-algebra/d-spca.md     |   172 -
 .../latest/algorithms/linear-algebra/d-ssvd.md     |   138 -
 .../docs/latest/algorithms/linear-algebra/index.md |    13 -
 .../map-reduce/classification/bayesian.md          |   145 -
 .../map-reduce/classification/class-discovery.md   |   153 -
 .../classification/classifyingyourdata.md          |    25 -
 .../map-reduce/classification/collocations.md      |   383 -
 .../gaussian-discriminative-analysis.md            |    18 -
 .../classification/hidden-markov-models.md         |   100 -
 .../independent-component-analysis.md              |    15 -
 .../locally-weighted-linear-regression.md          |    23 -
 .../classification/logistic-regression.md          |   127 -
 .../classification/mahout-collections.md           |    58 -
 .../algorithms/map-reduce/classification/mlp.md    |   170 -
 .../map-reduce/classification/naivebayes.md        |    43 -
 .../map-reduce/classification/neural-network.md    |    20 -
 .../classification/partial-implementation.md       |   144 -
 .../map-reduce/classification/random-forests.md    |   232 -
 .../restricted-boltzmann-machines.md               |    47 -
 .../classification/support-vector-machines.md      |    41 -
 .../map-reduce/clustering/canopy-clustering.md     |   189 -
 .../map-reduce/clustering/cluster-dumper.md        |   104 -
 .../clustering/expectation-maximization.md         |    60 -
 .../map-reduce/clustering/fuzzy-k-means.md         |   182 -
 .../clustering/hierarchical-clustering.md          |    13 -
 .../map-reduce/clustering/k-means-clustering.md    |   180 -
 .../clustering/latent-dirichlet-allocation.md      |   153 -
 .../clustering/llr---log-likelihood-ratio.md       |    43 -
 .../map-reduce/clustering/spectral-clustering.md   |    82 -
 .../map-reduce/clustering/streaming-k-means.md     |   172 -
 website/docs/latest/algorithms/map-reduce/index.md |    40 -
 .../latest/algorithms/preprocessors/AsFactor.md    |    33 -
 .../latest/algorithms/preprocessors/MeanCenter.md  |    28 -
 .../algorithms/preprocessors/StandardScaler.md     |    42 -
 .../docs/latest/algorithms/preprocessors/index.md  |    11 -
 website/docs/latest/algorithms/recommenders/cco.md |   438 -
 .../docs/latest/algorithms/recommenders/d-als.md   |    57 -
 .../docs/latest/algorithms/recommenders/index.md   |    39 -
 .../latest/algorithms/regression/fittness-tests.md |    15 -
 website/docs/latest/algorithms/regression/index.md |    20 -
 website/docs/latest/algorithms/regression/ols.md   |    64 -
 .../serial-correlation/cochrane-orcutt.md          |   144 -
 .../regression/serial-correlation/dw-test.md       |    41 -
 website/docs/latest/algorithms/template.md         |    18 -
 website/docs/latest/changelog.md                   |    75 -
 website/docs/latest/distributed/flink-bindings.md  |    47 -
 website/docs/latest/distributed/h2o-internals.md   |    48 -
 .../MahoutScalaAndSparkBindings.pptx               |   Bin 846177 -> 0 bytes
 .../spark-bindings/ScalaSparkBindings.pdf          |  6215 --
 .../docs/latest/distributed/spark-bindings/faq.md  |    52 -
 .../latest/distributed/spark-bindings/index.md     |   101 -
 website/docs/latest/index.md                       |   109 -
 website/docs/latest/mahout-samsara/faq.md          |    50 -
 .../latest/mahout-samsara/in-core-reference.md     |   302 -
 .../latest/mahout-samsara/out-of-core-reference.md |   316 -
 website/docs/latest/native-solvers/cuda.md         |     4 -
 website/docs/latest/native-solvers/viennacl-omp.md |     4 -
 website/docs/latest/native-solvers/viennacl.md     |     4 -
 website/docs/latest/quickstart.md                  |    62 -
 .../latest/tutorials/cco-lastfm/cco-lastfm.scala   |   112 -
 website/docs/latest/tutorials/cco-lastfm/index.md  |   152 -
 .../latest/tutorials/eigenfaces/eigenfaces.png     |   Bin 355453 -> 0 bytes
 website/docs/latest/tutorials/eigenfaces/index.md  |   126 -
 .../tutorials/intro-cooccurrence-spark/index.md    |   444 -
 .../classification/bankmarketing-example.md        |    51 -
 .../map-reduce/classification/breiman-example.md   |    65 -
 .../map-reduce/classification/twenty-newsgroups.md |   176 -
 .../classification/wikipedia-classifier-example.md |    56 -
 .../map-reduce/clustering/20newsgroups.md          |     9 -
 .../map-reduce/clustering/canopy-commandline.md    |    68 -
 .../clustering-of-synthetic-control-data.md        |    51 -
 .../clustering/clustering-seinfeld-episodes.md     |     9 -
 .../map-reduce/clustering/clusteringyourdata.md    |   124 -
 .../clustering/fuzzy-k-means-commandline.md        |    95 -
 .../map-reduce/clustering/k-means-commandline.md   |    92 -
 .../map-reduce/clustering/lda-commandline.md       |    81 -
 .../map-reduce/clustering/viewing-result.md        |    13 -
 .../map-reduce/clustering/viewing-results.md       |    48 -
 .../clustering/visualizing-sample-clusters.md      |    48 -
 website/docs/latest/tutorials/map-reduce/index.md  |    17 -
 .../tutorials/map-reduce/misc/mr---map-reduce.md   |    17 -
 .../misc/parallel-frequent-pattern-mining.md       |   184 -
 .../map-reduce/misc/perceptron-and-winnow.md       |    40 -
 .../latest/tutorials/map-reduce/misc/testing.md    |    45 -
 .../misc/using-mahout-with-python-via-jpype.md     |   220 -
 .../map-reduce/recommender/intro-als-hadoop.md     |    96 -
 .../recommender/intro-cooccurrence-spark.md        |   435 -
 .../recommender/intro-itembased-hadoop.md          |    54 -
 .../map-reduce/recommender/matrix-factorization.md |   186 -
 .../tutorials/map-reduce/recommender/quickstart.md |    30 -
 .../recommender/recommender-documentation.md       |   275 -
 .../recommender/recommender-first-timer-faq.md     |    52 -
 .../map-reduce/recommender/userbased-5-minutes.md  |   131 -
 .../tutorials/misc/contributing-algos/Foo.scala    |    75 -
 .../contributing-algos/RegressionSuiteBase.scala   |   202 -
 .../misc/contributing-algos/create-pr.png          |   Bin 27568 -> 0 bytes
 .../misc/contributing-algos/github-branch.png      |   Bin 87923 -> 0 bytes
 .../tutorials/misc/contributing-algos/index.md     |   414 -
 .../tutorials/misc/contributing-algos/jira.png     |   Bin 30685 -> 0 bytes
 .../tutorials/misc/contributing-algos/new-jira.png |   Bin 75111 -> 0 bytes
 .../misc/getting-started-with-zeppelin/index.md    |    40 -
 .../latest/tutorials/misc/how-to-build-an-app.md   |   255 -
 .../tutorials/misc/mahout-in-zeppelin/index.md     |   274 -
 .../misc/mahout-in-zeppelin/zeppelin1.png          |   Bin 50936 -> 0 bytes
 .../misc/mahout-in-zeppelin/zeppelin2.png          |   Bin 46906 -> 0 bytes
 .../misc/mahout-in-zeppelin/zeppelin3.png          |   Bin 68551 -> 0 bytes
 .../samsara/classify-a-doc-from-the-shell.md       |   256 -
 .../latest/tutorials/samsara/play-with-shell.md    |   198 -
 .../samsara/playing-with-samsara-flink-batch.md    |   109 -
 .../latest/tutorials/samsara/spark-naive-bayes.md  |   130 -
 website/general/books-tutorials-and-talks.md       |   121 -
 website/general/downloads.md                       |    75 -
 website/general/faq.md                             |   105 -
 website/general/glossary.md                        |    11 -
 website/general/mahout-benchmarks.md               |   153 -
 website/general/mahout-wiki.md                     |   199 -
 website/general/mailing-lists.md                   |    75 -
 website/general/powered-by-mahout.md               |   129 -
 website/general/privacy-policy.md                  |    29 -
 website/general/professional-support.md            |    40 -
 website/general/reference-reading.md               |    71 -
 website/general/release-notes.md                   |   242 -
 website/general/who-we-are.md                      |    66 -
 website/index.md                                   |    16 -
 .../Apache-Mahout-0.10.0-Release-Notes.pdf         |   Bin 88739 -> 0 bytes
 website/users/algorithms/d-als.md                  |    76 -
 website/users/algorithms/d-qr.md                   |    75 -
 website/users/algorithms/d-spca.md                 |   192 -
 website/users/algorithms/d-ssvd.md                 |   159 -
 .../users/algorithms/intro-cooccurrence-spark.md   |   456 -
 website/users/algorithms/recommender-overview.md   |    57 -
 website/users/algorithms/spark-naive-bayes.md      |   148 -
 website/users/basics/algorithms.md                 |    74 -
 website/users/basics/collections.md                |   112 -
 website/users/basics/collocations.md               |   400 -
 website/users/basics/creating-vectors-from-text.md |   307 -
 website/users/basics/creating-vectors.md           |    32 -
 .../basics/gaussian-discriminative-analysis.md     |    36 -
 .../users/basics/independent-component-analysis.md |    33 -
 website/users/basics/mahout-collections.md         |    76 -
 website/users/basics/mahoutintegration.md          |    22 -
 website/users/basics/matrix-and-vector-needs.md    |   104 -
 .../users/basics/principal-components-analysis.md  |    45 -
 website/users/basics/quickstart.md                 |    75 -
 .../basics/svd---singular-value-decomposition.md   |    68 -
 website/users/basics/system-requirements.md        |    36 -
 ...---term-frequency-inverse-document-frequency.md |    37 -
 .../users/classification/bankmarketing-example.md  |    69 -
 .../users/classification/bayesian-commandline.md   |    80 -
 website/users/classification/bayesian.md           |   163 -
 website/users/classification/breiman-example.md    |    83 -
 website/users/classification/class-discovery.md    |   171 -
 .../users/classification/classifyingyourdata.md    |    43 -
 .../users/classification/hidden-markov-models.md   |   118 -
 .../locally-weighted-linear-regression.md          |    41 -
 .../users/classification/logistic-regression.md    |   145 -
 website/users/classification/mlp.md                |   188 -
 website/users/classification/naivebayes.md         |    61 -
 website/users/classification/neural-network.md     |    38 -
 .../users/classification/partial-implementation.md |   162 -
 website/users/classification/random-forests.md     |   250 -
 .../restricted-boltzmann-machines.md               |    65 -
 .../classification/support-vector-machines.md      |    59 -
 website/users/classification/twenty-newsgroups.md  |   195 -
 .../classification/wikipedia-classifier-example.md |    73 -
 website/users/clustering/20newsgroups.md           |    27 -
 website/users/clustering/canopy-clustering.md      |   204 -
 website/users/clustering/canopy-commandline.md     |    86 -
 website/users/clustering/cluster-dumper.md         |   122 -
 .../clustering-of-synthetic-control-data.md        |    69 -
 .../clustering/clustering-seinfeld-episodes.md     |    27 -
 website/users/clustering/clusteringyourdata.md     |   142 -
 .../users/clustering/expectation-maximization.md   |    78 -
 .../users/clustering/fuzzy-k-means-commandline.md  |   113 -
 website/users/clustering/fuzzy-k-means.md          |   202 -
 .../users/clustering/hierarchical-clustering.md    |    31 -
 website/users/clustering/k-means-clustering.md     |   198 -
 website/users/clustering/k-means-commandline.md    |   110 -
 .../clustering/latent-dirichlet-allocation.md      |   171 -
 website/users/clustering/lda-commandline.md        |    99 -
 .../users/clustering/llr---log-likelihood-ratio.md |    62 -
 website/users/clustering/spectral-clustering.md    |   100 -
 website/users/clustering/streaming-k-means.md      |   190 -
 website/users/clustering/viewing-result.md         |    31 -
 website/users/clustering/viewing-results.md        |    65 -
 .../clustering/visualizing-sample-clusters.md      |    66 -
 .../users/dim-reduction/dimensional-reduction.md   |   462 -
 website/users/dim-reduction/ssvd.md                |   143 -
 website/users/dim-reduction/ssvd.page/SSVD-CLI.pdf |   Bin 462679 -> 0 bytes
 website/users/dim-reduction/ssvd.page/ssvd.R       |   181 -
 .../environment/classify-a-doc-from-the-shell.md   |   274 -
 website/users/environment/h2o-internals.md         |    67 -
 website/users/environment/how-to-build-an-app.md   |   273 -
 website/users/environment/in-core-reference.md     |   320 -
 website/users/environment/out-of-core-reference.md |   334 -
 website/users/environment/spark-internals.md       |    41 -
 website/users/flinkbindings/flink-internals.md     |    66 -
 .../flinkbindings/playing-with-samsara-flink.md    |   127 -
 website/users/misc/mr---map-reduce.md              |    35 -
 .../users/misc/parallel-frequent-pattern-mining.md |   201 -
 website/users/misc/perceptron-and-winnow.md        |    57 -
 website/users/misc/testing.md                      |    62 -
 .../misc/using-mahout-with-python-via-jpype.md     |   238 -
 website/users/recommender/intro-als-hadoop.md      |   114 -
 .../users/recommender/intro-cooccurrence-spark.md  |   456 -
 .../users/recommender/intro-itembased-hadoop.md    |    70 -
 website/users/recommender/matrix-factorization.md  |   203 -
 website/users/recommender/quickstart.md            |    57 -
 .../users/recommender/recommender-documentation.md |   293 -
 .../recommender/recommender-first-timer-faq.md     |    70 -
 website/users/recommender/userbased-5-minutes.md   |   149 -
 .../sparkbindings/MahoutScalaAndSparkBindings.pptx |   Bin 846177 -> 0 bytes
 website/users/sparkbindings/ScalaSparkBindings.pdf |  6215 --
 website/users/sparkbindings/faq.md                 |    68 -
 website/users/sparkbindings/home.md                |   117 -
 website/users/sparkbindings/play-with-shell.md     |   215 -
 2226 files changed, 252 insertions(+), 478989 deletions(-)

diff --git a/LICENSE b/LICENSE
deleted file mode 100644
index 9893977..0000000
--- a/LICENSE
+++ /dev/null
@@ -1,346 +0,0 @@
-
-                                 Apache License
-                           Version 2.0, January 2004
-                        http://www.apache.org/licenses/
-
-   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
-
-   1. Definitions.
-
-      "License" shall mean the terms and conditions for use, reproduction,
-      and distribution as defined by Sections 1 through 9 of this document.
-
-      "Licensor" shall mean the copyright owner or entity authorized by
-      the copyright owner that is granting the License.
-
-      "Legal Entity" shall mean the union of the acting entity and all
-      other entities that control, are controlled by, or are under common
-      control with that entity. For the purposes of this definition,
-      "control" means (i) the power, direct or indirect, to cause the
-      direction or management of such entity, whether by contract or
-      otherwise, or (ii) ownership of fifty percent (50%) or more of the
-      outstanding shares, or (iii) beneficial ownership of such entity.
-
-      "You" (or "Your") shall mean an individual or Legal Entity
-      exercising permissions granted by this License.
-
-      "Source" form shall mean the preferred form for making modifications,
-      including but not limited to software source code, documentation
-      source, and configuration files.
-
-      "Object" form shall mean any form resulting from mechanical
-      transformation or translation of a Source form, including but
-      not limited to compiled object code, generated documentation,
-      and conversions to other media types.
-
-      "Work" shall mean the work of authorship, whether in Source or
-      Object form, made available under the License, as indicated by a
-      copyright notice that is included in or attached to the work
-      (an example is provided in the Appendix below).
-
-      "Derivative Works" shall mean any work, whether in Source or Object
-      form, that is based on (or derived from) the Work and for which the
-      editorial revisions, annotations, elaborations, or other modifications
-      represent, as a whole, an original work of authorship. For the purposes
-      of this License, Derivative Works shall not include works that remain
-      separable from, or merely link (or bind by name) to the interfaces of,
-      the Work and Derivative Works thereof.
-
-      "Contribution" shall mean any work of authorship, including
-      the original version of the Work and any modifications or additions
-      to that Work or Derivative Works thereof, that is intentionally
-      submitted to Licensor for inclusion in the Work by the copyright owner
-      or by an individual or Legal Entity authorized to submit on behalf of
-      the copyright owner. For the purposes of this definition, "submitted"
-      means any form of electronic, verbal, or written communication sent
-      to the Licensor or its representatives, including but not limited to
-      communication on electronic mailing lists, source code control systems,
-      and issue tracking systems that are managed by, or on behalf of, the
-      Licensor for the purpose of discussing and improving the Work, but
-      excluding communication that is conspicuously marked or otherwise
-      designated in writing by the copyright owner as "Not a Contribution."
-
-      "Contributor" shall mean Licensor and any individual or Legal Entity
-      on behalf of whom a Contribution has been received by Licensor and
-      subsequently incorporated within the Work.
-
-   2. Grant of Copyright License. Subject to the terms and conditions of
-      this License, each Contributor hereby grants to You a perpetual,
-      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
-      copyright license to reproduce, prepare Derivative Works of,
-      publicly display, publicly perform, sublicense, and distribute the
-      Work and such Derivative Works in Source or Object form.
-
-   3. Grant of Patent License. Subject to the terms and conditions of
-      this License, each Contributor hereby grants to You a perpetual,
-      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
-      (except as stated in this section) patent license to make, have made,
-      use, offer to sell, sell, import, and otherwise transfer the Work,
-      where such license applies only to those patent claims licensable
-      by such Contributor that are necessarily infringed by their
-      Contribution(s) alone or by combination of their Contribution(s)
-      with the Work to which such Contribution(s) was submitted. If You
-      institute patent litigation against any entity (including a
-      cross-claim or counterclaim in a lawsuit) alleging that the Work
-      or a Contribution incorporated within the Work constitutes direct
-      or contributory patent infringement, then any patent licenses
-      granted to You under this License for that Work shall terminate
-      as of the date such litigation is filed.
-
-   4. Redistribution. You may reproduce and distribute copies of the
-      Work or Derivative Works thereof in any medium, with or without
-      modifications, and in Source or Object form, provided that You
-      meet the following conditions:
-
-      (a) You must give any other recipients of the Work or
-          Derivative Works a copy of this License; and
-
-      (b) You must cause any modified files to carry prominent notices
-          stating that You changed the files; and
-
-      (c) You must retain, in the Source form of any Derivative Works
-          that You distribute, all copyright, patent, trademark, and
-          attribution notices from the Source form of the Work,
-          excluding those notices that do not pertain to any part of
-          the Derivative Works; and
-
-      (d) If the Work includes a "NOTICE" text file as part of its
-          distribution, then any Derivative Works that You distribute must
-          include a readable copy of the attribution notices contained
-          within such NOTICE file, excluding those notices that do not
-          pertain to any part of the Derivative Works, in at least one
-          of the following places: within a NOTICE text file distributed
-          as part of the Derivative Works; within the Source form or
-          documentation, if provided along with the Derivative Works; or,
-          within a display generated by the Derivative Works, if and
-          wherever such third-party notices normally appear. The contents
-          of the NOTICE file are for informational purposes only and
-          do not modify the License. You may add Your own attribution
-          notices within Derivative Works that You distribute, alongside
-          or as an addendum to the NOTICE text from the Work, provided
-          that such additional attribution notices cannot be construed
-          as modifying the License.
-
-      You may add Your own copyright statement to Your modifications and
-      may provide additional or different license terms and conditions
-      for use, reproduction, or distribution of Your modifications, or
-      for any such Derivative Works as a whole, provided Your use,
-      reproduction, and distribution of the Work otherwise complies with
-      the conditions stated in this License.
-
-   5. Submission of Contributions. Unless You explicitly state otherwise,
-      any Contribution intentionally submitted for inclusion in the Work
-      by You to the Licensor shall be under the terms and conditions of
-      this License, without any additional terms or conditions.
-      Notwithstanding the above, nothing herein shall supersede or modify
-      the terms of any separate license agreement you may have executed
-      with Licensor regarding such Contributions.
-
-   6. Trademarks. This License does not grant permission to use the trade
-      names, trademarks, service marks, or product names of the Licensor,
-      except as required for reasonable and customary use in describing the
-      origin of the Work and reproducing the content of the NOTICE file.
-
-   7. Disclaimer of Warranty. Unless required by applicable law or
-      agreed to in writing, Licensor provides the Work (and each
-      Contributor provides its Contributions) on an "AS IS" BASIS,
-      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
-      implied, including, without limitation, any warranties or conditions
-      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
-      PARTICULAR PURPOSE. You are solely responsible for determining the
-      appropriateness of using or redistributing the Work and assume any
-      risks associated with Your exercise of permissions under this License.
-
-   8. Limitation of Liability. In no event and under no legal theory,
-      whether in tort (including negligence), contract, or otherwise,
-      unless required by applicable law (such as deliberate and grossly
-      negligent acts) or agreed to in writing, shall any Contributor be
-      liable to You for damages, including any direct, indirect, special,
-      incidental, or consequential damages of any character arising as a
-      result of this License or out of the use or inability to use the
-      Work (including but not limited to damages for loss of goodwill,
-      work stoppage, computer failure or malfunction, or any and all
-      other commercial damages or losses), even if such Contributor
-      has been advised of the possibility of such damages.
-
-   9. Accepting Warranty or Additional Liability. While redistributing
-      the Work or Derivative Works thereof, You may choose to offer,
-      and charge a fee for, acceptance of support, warranty, indemnity,
-      or other liability obligations and/or rights consistent with this
-      License. However, in accepting such obligations, You may act only
-      on Your own behalf and on Your sole responsibility, not on behalf
-      of any other Contributor, and only if You agree to indemnify,
-      defend, and hold each Contributor harmless for any liability
-      incurred by, or claims asserted against, such Contributor by reason
-      of your accepting any such warranty or additional liability.
-
-   END OF TERMS AND CONDITIONS
-
-   APPENDIX: How to apply the Apache License to your work.
-
-      To apply the Apache License to your work, attach the following
-      boilerplate notice, with the fields enclosed by brackets "[]"
-      replaced with your own identifying information. (Don't include
-      the brackets!)  The text should be enclosed in the appropriate
-      comment syntax for the file format. We also recommend that a
-      file or class name and description of purpose be included on the
-      same "printed page" as the copyright notice for easier
-      identification within third-party archives.
-
-   Copyright [yyyy] [name of copyright owner]
-
-   Licensed under the Apache License, Version 2.0 (the "License");
-   you may not use this file except in compliance with the License.
-   You may obtain a copy of the License at
-
-       http://www.apache.org/licenses/LICENSE-2.0
-
-   Unless required by applicable law or agreed to in writing, software
-   distributed under the License is distributed on an "AS IS" BASIS,
-   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-   See the License for the specific language governing permissions and
-   limitations under the License.
-
-
-==========================================================
-CERN Colt Java Library
-==========================================================
-Copyright © 1999 CERN - European Organization for Nuclear Research.<br/><br/>
-
-Permission to use, copy, modify, distribute and sell this software and its documentation for any purpose
-is hereby granted without fee, provided that the above copyright notice appear in all copies and
-that both that copyright notice and this permission notice appear in supporting documentation.
-CERN makes no representations about the suitability of this software for any purpose.
-It is provided "as is" without expressed or implied warranty.
-
-[Mahout note:  We have included, as source, parts of the CERN Colt Java Matrix library as a Module
-in the Mahout source tree. The parts included are those in cern.colt* , cern.jet*, cern.clhep.
-We have excluded the hep.aida* packages.]
-
-  apache-mahout-14.1/core/src/main/java/org/apache/mahout/math/Arrays.java
-  apache-mahout-14.1/core/src/main/java/org/apache/mahout/math/OldQRDecomposition.java
-  apache-mahout-14.1/core/src/main/java/org/apache/mahout/math/PersistentObject.java
-  apache-mahout-14.1/core/src/main/java/org/apache/mahout/math/QRDecomposition.java
-  apache-mahout-14.1/core/src/main/java/org/apache/mahout/math/SingularValueDecomposition.java
-  apache-mahout-14.1/core/src/main/java/org/apache/mahout/math/Swapper.java
-  apache-mahout-14.1/core/src/main/java/org/apache/mahout/math/collections/Arithmetic.java
-  apache-mahout-14.1/core/src/main/java/org/apache/mahout/math/collections/Constants.java
-  apache-mahout-14.1/core/src/main/java/org/apache/mahout/math/function/DoubleDoubleFunction.java
-  apache-mahout-14.1/core/src/main/java/org/apache/mahout/math/function/DoubleFunction.java
-  apache-mahout-14.1/core/src/main/java/org/apache/mahout/math/function/Functions.java
-  apache-mahout-14.1/core/src/main/java/org/apache/mahout/math/function/IntFunction.java
-  apache-mahout-14.1/core/src/main/java/org/apache/mahout/math/function/IntIntDoubleFunction.java
-  apache-mahout-14.1/core/src/main/java/org/apache/mahout/math/function/Mult.java
-  apache-mahout-14.1/core/src/main/java/org/apache/mahout/math/function/ObjectProcedure.java
-  apache-mahout-14.1/core/src/main/java/org/apache/mahout/math/function/PlusMult.java
-  apache-mahout-14.1/core/src/main/java/org/apache/mahout/math/jet/math/Arithmetic.java
-  apache-mahout-14.1/core/src/main/java/org/apache/mahout/math/jet/math/Constants.java
-  apache-mahout-14.1/core/src/main/java/org/apache/mahout/math/jet/math/Polynomial.java
-  apache-mahout-14.1/core/src/main/java/org/apache/mahout/math/jet/random/AbstractContinuousDistribution.java
-  apache-mahout-14.1/core/src/main/java/org/apache/mahout/math/jet/random/AbstractDiscreteDistribution.java
-  apache-mahout-14.1/core/src/main/java/org/apache/mahout/math/jet/random/AbstractDistribution.java
-  apache-mahout-14.1/core/src/main/java/org/apache/mahout/math/jet/random/Exponential.java
-  apache-mahout-14.1/core/src/main/java/org/apache/mahout/math/jet/random/Gamma.java
-  apache-mahout-14.1/core/src/main/java/org/apache/mahout/math/jet/random/NegativeBinomial.java
-  apache-mahout-14.1/core/src/main/java/org/apache/mahout/math/jet/random/Normal.java
-  apache-mahout-14.1/core/src/main/java/org/apache/mahout/math/jet/random/Poisson.java
-  apache-mahout-14.1/core/src/main/java/org/apache/mahout/math/jet/random/Uniform.java
-  apache-mahout-14.1/core/src/main/java/org/apache/mahout/math/jet/random/engine/MersenneTwister.java
-  apache-mahout-14.1/core/src/main/java/org/apache/mahout/math/jet/random/engine/RandomEngine.java
-  apache-mahout-14.1/core/src/main/java/org/apache/mahout/math/jet/random/sampling/RandomSampler.java
-  apache-mahout-14.1/core/src/main/java/org/apache/mahout/math/jet/stat/Gamma.java
-  apache-mahout-14.1/core/src/main/java/org/apache/mahout/math/jet/stat/Probability.java
-  apache-mahout-14.1/core/src/main/java/org/apache/mahout/math/list/AbstractList.java
-  apache-mahout-14.1/core/src/main/java/org/apache/mahout/math/list/AbstractObjectList.java
-  apache-mahout-14.1/core/src/main/java/org/apache/mahout/math/list/ObjectArrayList.java
-  apache-mahout-14.1/core/src/main/java/org/apache/mahout/math/list/SimpleLongArrayList.java
-  apache-mahout-14.1/core/src/main/java/org/apache/mahout/math/map/HashFunctions.java
-  apache-mahout-14.1/core/src/main/java/org/apache/mahout/math/map/OpenHashMap.java
-  apache-mahout-14.1/core/src/main/java/org/apache/mahout/math/map/QuickOpenIntIntHashMap.java
-  apache-mahout-14.1/core/src/main/java/org/apache/mahout/math/set/AbstractSet.java
-  apache-mahout-14.1/core/src/main/java-templates/org/apache/mahout/math/buffer/ValueTypeBufferConsumer.java.t
-  apache-mahout-14.1/core/src/main/java-templates/org/apache/mahout/math/function/KeyTypeObjectProcedure.java.t
-  apache-mahout-14.1/core/src/main/java-templates/org/apache/mahout/math/function/KeyTypeProcedure.java.t
-  apache-mahout-14.1/core/src/main/java-templates/org/apache/mahout/math/function/KeyTypeProcedure.java.t
-  apache-mahout-14.1/core/src/main/java-templates/org/apache/mahout/math/function/ObjectValueTypeProcedure.java.t
-  apache-mahout-14.1/core/src/main/java-templates/org/apache/mahout/math/function/ObjectValueTypeProcedure.java.t
-  apache-mahout-14.1/core/src/main/java-templates/org/apache/mahout/math/list/AbstractValueTypeList.java.t
-  apache-mahout-14.1/core/src/main/java-templates/org/apache/mahout/math/list/ValueTypeArrayList.java.t
-  apache-mahout-14.1/core/src/main/java-templates/org/apache/mahout/math/map/AbstractKeyTypeObjectMap.java.t
-  apache-mahout-14.1/core/src/main/java-templates/org/apache/mahout/math/map/AbstractKeyTypeValueTypeMap.java.t
-  apache-mahout-14.1/core/src/main/java-templates/org/apache/mahout/math/map/AbstractObjectValueTypeMap.java.t
-  apache-mahout-14.1/core/src/main/java-templates/org/apache/mahout/math/map/OpenKeyTypeObjectHashMap.java.t
-  apache-mahout-14.1/core/src/main/java-templates/org/apache/mahout/math/map/OpenKeyTypeValueTypeHashMap.java.t
-  apache-mahout-14.1/core/src/main/java-templates/org/apache/mahout/math/map/OpenObjectValueTypeHashMap.java.t
-
-================================================================
-Austin Appleby's C algorithm implemented by Yonik Seeley under public domain
-================================================================
-
-  apache-mahout-14.1/core/src/main/java/org/apache/mahout/math/MurmurHash3.java
-  apache-mahout-14.1/core/src/test/java/org/apache/mahout/math/MurmurHash3Test.java
-
-================================================================
-Bootstrap
-================================================================
-
-Files in the directory: website/assets/vendor/bootstrap
-Are copied from the Bootstrap (https://github.com/twbs/bootstrap) project
-which is licensed under the MIT license
-
-================================================================
-JQuery
-================================================================
-
-Files in the directory: website/assets/vendor/jquery
-Are copied from the JQuery (https://jquery.com/) project
-which is licensed under the MIT license
-
-================================================================
-Proper
-================================================================
-
-Files in the directory: website/assets/vendor/propper
-Are copied from the Propper project (https://popper.js.org/)
-which is licensed under the MIT license.
-
-================================================================
-The following applies to the ViennaCL library and files in the mahout-native-viennacl module
-================================================================
-
-   Copyright (c) 2010-2016 Institute for Microelectronics,
-                           Institute for Analysis and Scientific Computing, TU Wien.
-   Portions of this software are copyright by UChicago Argonne, LLC.
-   Argonne National Laboratory, with facilities in the state of Illinois,
-   is owned by The United States Government, and operated by UChicago Argonne, LLC
-   under provision of a contract with the Department of Energy.
-
-   Permission is hereby granted, free of charge, to any person obtaining a copy
-   of this software and associated documentation files (the "Software"), to deal
-   in the Software without restriction, including without limitation the rights
-   to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-   copies of the Software, and to permit persons to whom the Software is
-   furnished to do so, subject to the following conditions:
-
-   The above copyright notice and this permission notice shall be included in
-   all copies or substantial portions of the Software.
-
-   THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-   IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-   FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-   AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-   LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-   OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-   THE SOFTWARE.
-
-  ===============================================================================
-  The following applies to the bydeco/javacpp code and module
-  ===============================================================================
-  You may use this work under the terms of either the Apache License,
-  Version 2.0, or the GNU General Public License (GPL), either version 2,
-  or any later version, with "Classpath" exception (details below).
-
-  You don't have to do anything special to choose one license or the other
-  and you don't have to notify anyone which license you are using. You are
-  free to use this work in any project (even commercial projects) as long
-  as the copyright header is left intact.
diff --git a/NOTICE b/NOTICE
deleted file mode 100644
index 84968d4..0000000
--- a/NOTICE
+++ /dev/null
@@ -1,41 +0,0 @@
-==============================================================
- Apache Mahout
- Copyright 2009-2020 The Apache Software Foundation
-==============================================================
-
-This product includes software developed by
-The Apache Software Foundation (http://www.apache.org/).
-
-It includes software from other Apache Software Foundation projects,
-including, but not limited to:
-  - Apache Lucene Java
-  - Apache Solr
-  - Apache Hadoop
-  - Apache Commons
-  - Apache Spark
-  - Apache Flink
-
-This product includes software from the SLF4J project
-  http://www.slf4j.org/
-  Copyright (c) 2004-2016 QOS.ch
-
-This product includes software developed by the Indiana University
-  Extreme! Lab (http://www.extreme.indiana.edu/).
-  Copyright (c) 2002 Extreme! Lab, Indiana University.
-
-This product includes a JUnit jar: http://junit.sourceforge.net/
-License: Common Public License - v 1.0 (http://junit.sourceforge.net/cpl-v10.html)
-Copyright (c) 2000-2006, www.hamcrest.org
-
-This product includes code from the XStream project (http://xstream.codehaus.org/)
-Copyright (c) 2003-2006, Joe Walnes
-Copyright (c) 2006-2007, XStream Committers
-
-This product includes tests written with EasyMock 
-Copyright 2001-2007 Tammo Freese (http://www.easymock.org/)
-
-This product uses the Breast Cancer Wisconsin (Diagnostic) Dataset from the
-UCI Machine Learning Repository
-[http://www.ics.uci.edu/~mlearn/MLRepository.html,
- http://archive.ics.uci.edu/ml/datasets/Breast+Cancer+Wisconsin+(Diagnostic)].
-
diff --git a/buildtools/Eclipse-Lucene-Codestyle.xml b/buildtools/Eclipse-Lucene-Codestyle.xml
deleted file mode 100644
index 44dde9f..0000000
--- a/buildtools/Eclipse-Lucene-Codestyle.xml
+++ /dev/null
@@ -1,883 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!--
- Licensed to the Apache Software Foundation (ASF) under one or more
- contributor license agreements.  See the NOTICE file distributed with
- this work for additional information regarding copyright ownership.
- The ASF licenses this file to You under the Apache License, Version 2.0
- (the "License"); you may not use this file except in compliance with
- the License.  You may obtain a copy of the License at
-
-     http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
--->
-<profiles version="12">
-<profile kind="CodeFormatterProfile" name="Apache Conventions" version="12">
-<setting id="org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.disabling_tag" value="@formatter:off"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration" value="end_of_line"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_field" value="0"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.use_on_off_tags" value="false"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line" value="false"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_ellipsis" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_multiple_fields" value="16"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer" value="16"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_conditional_expression" value="80"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_binary_operator" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.brace_position_for_array_initializer" value="end_of_line"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.blank_lines_after_package" value="1"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.continuation_indentation" value="2"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation" value="16"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk" value="1"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_binary_operator" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_package" value="0"/>
-<setting id="org.eclipse.jdt.core.compiler.source" value="1.7"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.comment.format_line_comments" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.join_wrapped_lines" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call" value="16"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_member_type" value="1"/>
-<setting id="org.eclipse.jdt.core.formatter.align_type_members_on_columns" value="false"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation" value="16"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_unary_operator" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.comment.indent_parameter_description" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment" value="false"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.lineSplit" value="80"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration" value="0"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.indentation.size" value="4"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.enabling_tag" value="@formatter:on"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration" value="16"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_assignment" value="0"/>
-<setting id="org.eclipse.jdt.core.compiler.problem.assertIdentifier" value="error"/>
-<setting id="org.eclipse.jdt.core.formatter.tabulation.char" value="space"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_try_resources" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.indent_statements_compare_to_body" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_method" value="1"/>
-<setting id="org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line" value="false"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration" value="16"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration" value="end_of_line"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_method_declaration" value="0"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_try" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.brace_position_for_switch" value="end_of_line"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_try" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.comment.preserve_white_space_between_code_and_line_comments" value="false"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.compiler.problem.enumIdentifier" value="error"/>
-<setting id="org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch" value="false"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_ellipsis" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.brace_position_for_block" value="end_of_line"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.brace_position_for_method_declaration" value="end_of_line"/>
-<setting id="org.eclipse.jdt.core.formatter.compact_else_if" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.brace_position_for_enum_constant" value="end_of_line"/>
-<setting id="org.eclipse.jdt.core.formatter.comment.indent_root_tags" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_union_type_in_multicatch" value="16"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.tabulation.size" value="2"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment" value="false"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration" value="16"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.indent_empty_lines" value="false"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.brace_position_for_block_in_case" value="end_of_line"/>
-<setting id="org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve" value="1"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression" value="16"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter" value="insert"/>
-<setting id="org.eclipse.jdt.core.compiler.compliance" value="1.7"/>
-<setting id="org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer" value="2"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression" value="16"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_unary_operator" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line" value="false"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line" value="false"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration" value="16"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_binary_expression" value="16"/>
-<setting id="org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration" value="end_of_line"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_type" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode" value="enabled"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_try" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_label" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant" value="16"/>
-<setting id="org.eclipse.jdt.core.formatter.comment.format_javadoc_comments" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.comment.line_length" value="80"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_package" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.blank_lines_between_import_groups" value="1"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_semicolon" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration" value="end_of_line"/>
-<setting id="org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body" value="0"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.wrap_before_binary_operator" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations" value="1"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.indent_statements_compare_to_block" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration" value="16"/>
-<setting id="org.eclipse.jdt.core.formatter.join_lines_in_comments" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_compact_if" value="16"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_imports" value="1"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.comment.format_html" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration" value="16"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.comment.format_source_code" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration" value="16"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer" value="insert"/>
-<setting id="org.eclipse.jdt.core.compiler.codegen.targetPlatform" value="1.7"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_resources_in_try" value="80"/>
-<setting id="org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations" value="false"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation" value="0"/>
-<setting id="org.eclipse.jdt.core.formatter.comment.format_header" value="false"/>
-<setting id="org.eclipse.jdt.core.formatter.comment.format_block_comments" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_enum_constants" value="0"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.brace_position_for_type_declaration" value="end_of_line"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.blank_lines_after_imports" value="1"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column" value="false"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_try_resources" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column" value="false"/>
-<setting id="org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line" value="false"/>
-</profile>
-<profile kind="CodeFormatterProfile" name="Lucene" version="12">
-<setting id="org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.disabling_tag" value="@formatter:off"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration" value="end_of_line"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_field" value="1"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.use_on_off_tags" value="false"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line" value="false"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_ellipsis" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_multiple_fields" value="16"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer" value="16"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_conditional_expression" value="80"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_binary_operator" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.brace_position_for_array_initializer" value="end_of_line"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.blank_lines_after_package" value="1"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.continuation_indentation" value="2"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation" value="82"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk" value="1"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_binary_operator" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_package" value="0"/>
-<setting id="org.eclipse.jdt.core.compiler.source" value="1.7"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.comment.format_line_comments" value="false"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.join_wrapped_lines" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call" value="82"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_member_type" value="1"/>
-<setting id="org.eclipse.jdt.core.formatter.align_type_members_on_columns" value="false"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation" value="16"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_unary_operator" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.comment.indent_parameter_description" value="false"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment" value="false"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.lineSplit" value="132"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration" value="0"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.indentation.size" value="4"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.enabling_tag" value="@formatter:on"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration" value="16"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_assignment" value="0"/>
-<setting id="org.eclipse.jdt.core.compiler.problem.assertIdentifier" value="error"/>
-<setting id="org.eclipse.jdt.core.formatter.tabulation.char" value="space"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_try_resources" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.indent_statements_compare_to_body" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_method" value="1"/>
-<setting id="org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line" value="false"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration" value="82"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration" value="end_of_line"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_method_declaration" value="0"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_try" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.brace_position_for_switch" value="end_of_line"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_try" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.comment.preserve_white_space_between_code_and_line_comments" value="false"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.compiler.problem.enumIdentifier" value="error"/>
-<setting id="org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_ellipsis" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.brace_position_for_block" value="end_of_line"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.brace_position_for_method_declaration" value="end_of_line"/>
-<setting id="org.eclipse.jdt.core.formatter.compact_else_if" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.brace_position_for_enum_constant" value="end_of_line"/>
-<setting id="org.eclipse.jdt.core.formatter.comment.indent_root_tags" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_union_type_in_multicatch" value="16"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.tabulation.size" value="2"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment" value="false"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration" value="16"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.indent_empty_lines" value="false"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.brace_position_for_block_in_case" value="end_of_line"/>
-<setting id="org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve" value="1"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression" value="82"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter" value="insert"/>
-<setting id="org.eclipse.jdt.core.compiler.compliance" value="1.7"/>
-<setting id="org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer" value="2"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression" value="82"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_unary_operator" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line" value="false"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line" value="false"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration" value="16"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_binary_expression" value="16"/>
-<setting id="org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration" value="end_of_line"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_type" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode" value="enabled"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_try" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_label" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant" value="16"/>
-<setting id="org.eclipse.jdt.core.formatter.comment.format_javadoc_comments" value="false"/>
-<setting id="org.eclipse.jdt.core.formatter.comment.line_length" value="80"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_package" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.blank_lines_between_import_groups" value="1"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_semicolon" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration" value="end_of_line"/>
-<setting id="org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body" value="0"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.wrap_before_binary_operator" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations" value="1"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.indent_statements_compare_to_block" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration" value="16"/>
-<setting id="org.eclipse.jdt.core.formatter.join_lines_in_comments" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_compact_if" value="16"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_imports" value="1"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.comment.format_html" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration" value="16"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.comment.format_source_code" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration" value="82"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer" value="insert"/>
-<setting id="org.eclipse.jdt.core.compiler.codegen.targetPlatform" value="1.7"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_resources_in_try" value="80"/>
-<setting id="org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations" value="false"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation" value="0"/>
-<setting id="org.eclipse.jdt.core.formatter.comment.format_header" value="false"/>
-<setting id="org.eclipse.jdt.core.formatter.comment.format_block_comments" value="false"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_enum_constants" value="0"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.brace_position_for_type_declaration" value="end_of_line"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.blank_lines_after_imports" value="1"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column" value="false"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_try_resources" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column" value="false"/>
-<setting id="org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line" value="false"/>
-</profile>
-<profile kind="CodeFormatterProfile" name="Mahout Standard Lucene" version="12">
-<setting id="org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.disabling_tag" value="@formatter:off"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration" value="end_of_line"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_field" value="0"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.use_on_off_tags" value="false"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_ellipsis" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_multiple_fields" value="16"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer" value="16"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_conditional_expression" value="80"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_binary_operator" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.brace_position_for_array_initializer" value="end_of_line"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.blank_lines_after_package" value="1"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.continuation_indentation" value="2"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation" value="16"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk" value="1"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_binary_operator" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_package" value="0"/>
-<setting id="org.eclipse.jdt.core.compiler.source" value="1.7"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.comment.format_line_comments" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.join_wrapped_lines" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call" value="16"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_member_type" value="1"/>
-<setting id="org.eclipse.jdt.core.formatter.align_type_members_on_columns" value="false"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation" value="16"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_unary_operator" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.comment.indent_parameter_description" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment" value="false"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.lineSplit" value="120"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration" value="0"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.indentation.size" value="2"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.enabling_tag" value="@formatter:on"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration" value="16"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_assignment" value="0"/>
-<setting id="org.eclipse.jdt.core.compiler.problem.assertIdentifier" value="error"/>
-<setting id="org.eclipse.jdt.core.formatter.tabulation.char" value="space"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_try_resources" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.indent_statements_compare_to_body" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_method" value="1"/>
-<setting id="org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line" value="false"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration" value="16"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration" value="end_of_line"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_method_declaration" value="0"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_try" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.brace_position_for_switch" value="end_of_line"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_try" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.comment.preserve_white_space_between_code_and_line_comments" value="false"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.compiler.problem.enumIdentifier" value="error"/>
-<setting id="org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_ellipsis" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.brace_position_for_block" value="end_of_line"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.brace_position_for_method_declaration" value="end_of_line"/>
-<setting id="org.eclipse.jdt.core.formatter.compact_else_if" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.brace_position_for_enum_constant" value="end_of_line"/>
-<setting id="org.eclipse.jdt.core.formatter.comment.indent_root_tags" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_union_type_in_multicatch" value="16"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.tabulation.size" value="2"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment" value="false"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration" value="16"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.indent_empty_lines" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.brace_position_for_block_in_case" value="end_of_line"/>
-<setting id="org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve" value="1"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression" value="16"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter" value="insert"/>
-<setting id="org.eclipse.jdt.core.compiler.compliance" value="1.7"/>
-<setting id="org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer" value="2"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression" value="16"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_unary_operator" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line" value="false"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line" value="false"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration" value="16"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_binary_expression" value="16"/>
-<setting id="org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration" value="end_of_line"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_type" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode" value="enabled"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_try" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_label" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant" value="16"/>
-<setting id="org.eclipse.jdt.core.formatter.comment.format_javadoc_comments" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.comment.line_length" value="120"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_package" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.blank_lines_between_import_groups" value="1"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_semicolon" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration" value="end_of_line"/>
-<setting id="org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body" value="0"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.wrap_before_binary_operator" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations" value="1"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.indent_statements_compare_to_block" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration" value="16"/>
-<setting id="org.eclipse.jdt.core.formatter.join_lines_in_comments" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_compact_if" value="16"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_imports" value="1"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.comment.format_html" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration" value="16"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.comment.format_source_code" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration" value="16"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.compiler.codegen.targetPlatform" value="1.7"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_resources_in_try" value="80"/>
-<setting id="org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation" value="0"/>
-<setting id="org.eclipse.jdt.core.formatter.comment.format_header" value="false"/>
-<setting id="org.eclipse.jdt.core.formatter.comment.format_block_comments" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.alignment_for_enum_constants" value="0"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.brace_position_for_type_declaration" value="end_of_line"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.blank_lines_after_imports" value="1"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header" value="true"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for" value="insert"/>
-<setting id="org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column" value="false"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_try_resources" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments" value="do not insert"/>
-<setting id="org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column" value="false"/>
-<setting id="org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line" value="true"/>
-</profile>
-</profiles>
diff --git a/buildtools/MahoutCleanUp.xml b/buildtools/MahoutCleanUp.xml
deleted file mode 100644
index 75b404d..0000000
--- a/buildtools/MahoutCleanUp.xml
+++ /dev/null
@@ -1,67 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Licensed to the Apache Software Foundation (ASF) under one or more
- contributor license agreements.  See the NOTICE file distributed with
- this work for additional information regarding copyright ownership.
- The ASF licenses this file to You under the Apache License, Version 2.0
- (the "License"); you may not use this file except in compliance with
- the License.  You may obtain a copy of the License at
-
-     http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
--->
-<profiles version="2">
-<profile kind="CleanUpProfile" name="CXF" version="2">
-<setting id="cleanup.always_use_blocks" value="true"/>
-<setting id="cleanup.use_this_for_non_static_field_access_only_if_necessary" value="true"/>
-<setting id="cleanup.use_this_for_non_static_field_access" value="false"/>
-<setting id="cleanup.qualify_static_method_accesses_with_declaring_class" value="false"/>
-<setting id="cleanup.remove_unused_private_fields" value="true"/>
-<setting id="cleanup.remove_unnecessary_casts" value="true"/>
-<setting id="cleanup.sort_members_all" value="true"/>
-<setting id="cleanup.make_local_variable_final" value="true"/>
-<setting id="cleanup.never_use_parentheses_in_expressions" value="true"/>
-<setting id="cleanup.always_use_this_for_non_static_method_access" value="false"/>
-<setting id="cleanup.convert_to_enhanced_for_loop" value="true"/>
-<setting id="cleanup.remove_trailing_whitespaces" value="true"/>
-<setting id="cleanup.qualify_static_field_accesses_with_declaring_class" value="false"/>
-<setting id="cleanup.use_this_for_non_static_method_access_only_if_necessary" value="true"/>
-<setting id="cleanup.always_use_parentheses_in_expressions" value="false"/>
-<setting id="cleanup.remove_unused_private_types" value="true"/>
-<setting id="cleanup.format_source_code" value="true"/>
-<setting id="cleanup.qualify_static_member_accesses_through_instances_with_declaring_class" value="true"/>
-<setting id="cleanup.remove_unused_local_variables" value="true"/>
-<setting id="cleanup.add_missing_nls_tags" value="false"/>
-<setting id="cleanup.add_missing_override_annotations" value="false"/>
-<setting id="cleanup.add_missing_annotations" value="true"/>
-<setting id="cleanup.use_this_for_non_static_method_access" value="false"/>
-<setting id="cleanup.make_variable_declarations_final" value="false"/>
-<setting id="cleanup.remove_private_constructors" value="true"/>
-<setting id="cleanup.make_parameters_final" value="false"/>
-<setting id="cleanup.remove_trailing_whitespaces_all" value="true"/>
-<setting id="cleanup.add_generated_serial_version_id" value="false"/>
-<setting id="cleanup.add_missing_deprecated_annotations" value="true"/>
-<setting id="cleanup.organize_imports" value="true"/>
-<setting id="cleanup.qualify_static_member_accesses_with_declaring_class" value="true"/>
-<setting id="cleanup.remove_unnecessary_nls_tags" value="true"/>
-<setting id="cleanup.always_use_this_for_non_static_field_access" value="false"/>
-<setting id="cleanup.remove_trailing_whitespaces_ignore_empty" value="false"/>
-<setting id="cleanup.use_parentheses_in_expressions" value="true"/>
-<setting id="cleanup.never_use_blocks" value="false"/>
-<setting id="cleanup.sort_members" value="false"/>
-<setting id="cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class" value="true"/>
-<setting id="cleanup.use_blocks_only_for_return_and_throw" value="false"/>
-<setting id="cleanup.add_default_serial_version_id" value="true"/>
-<setting id="cleanup.add_serial_version_id" value="false"/>
-<setting id="cleanup.use_blocks" value="true"/>
-<setting id="cleanup.make_private_fields_final" value="true"/>
-<setting id="cleanup.remove_unused_imports" value="true"/>
-<setting id="cleanup.remove_unused_private_methods" value="true"/>
-<setting id="cleanup.remove_unused_private_members" value="false"/>
-</profile>
-</profiles>
diff --git a/buildtools/addcheckstyle.xsl b/buildtools/addcheckstyle.xsl
deleted file mode 100644
index 9fad6a7..0000000
--- a/buildtools/addcheckstyle.xsl
+++ /dev/null
@@ -1,54 +0,0 @@
-<?xml version="1.0"?>
-<!--
-  Licensed to the Apache Software Foundation (ASF) under one
-  or more contributor license agreements. See the NOTICE file
-  distributed with this work for additional information
-  regarding copyright ownership. The ASF licenses this file
-  to you under the Apache License, Version 2.0 (the
-  "License"); you may not use this file except in compliance
-  with the License. You may obtain a copy of the License at
-
-  http://www.apache.org/licenses/LICENSE-2.0
-
-  Unless required by applicable law or agreed to in writing,
-  software distributed under the License is distributed on an
-  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-  KIND, either express or implied. See the License for the
-  specific language governing permissions and limitations
-  under the License.
--->
-
-<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
-    <xsl:output method="xml" indent="yes"/>
-    <xsl:strip-space elements="*"/>
-    
-    <xsl:param name="checkstyleconfig"/>
-    <xsl:param name="checkstyleconfigcorba"/>
-
-    <xsl:template match="*">
-        <xsl:copy>
-            <xsl:copy-of select="@*"/>
-            <xsl:apply-templates/>
-        </xsl:copy>
-    </xsl:template>
-
-    <xsl:template match="checkstyle-configurations">
-        <xsl:copy>
-            <xsl:copy-of select="@*"/>
-            <xsl:apply-templates/>
-
-            <xsl:choose>
-                <xsl:when test="not(check-configuration/@name='CXF CORBA Checks')">
-                    <check-configuration name="CXF Checks" type="external" description="">
-                        <xsl:attribute name="location"><xsl:value-of select="$checkstyleconfig"/></xsl:attribute>
-                    </check-configuration>
-                    <check-configuration name="CXF CORBA Checks" type="external" description="">
-                        <xsl:attribute name="location"><xsl:value-of select="$checkstyleconfigcorba"/></xsl:attribute>
-                    </check-configuration>
-                </xsl:when>
-            </xsl:choose>
-        </xsl:copy>
-    </xsl:template>
-
-</xsl:stylesheet>
-
diff --git a/buildtools/apache-header.txt b/buildtools/apache-header.txt
deleted file mode 100644
index 8c563ab..0000000
--- a/buildtools/apache-header.txt
+++ /dev/null
@@ -1,16 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
diff --git a/buildtools/change-scala-version.sh b/buildtools/change-scala-version.sh
deleted file mode 100755
index 76a2255..0000000
--- a/buildtools/change-scala-version.sh
+++ /dev/null
@@ -1,80 +0,0 @@
-#!/usr/bin/env bash
-
-#
-# Licensed to the Apache Software Foundation (ASF) under one or more
-# contributor license agreements.  See the NOTICE file distributed with
-# this work for additional information regarding copyright ownership.
-# The ASF licenses this file to You under the Apache License, Version 2.0
-# (the "License"); you may not use this file except in compliance with
-# the License.  You may obtain a copy of the License at
-#
-#    http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-
-# A BIG Shoutout to the Bros and Bro-ettes at Apache Spark for this
-
-## TODO post 14.1 fix this script ---- Idempotency is lost somewhere, and 
-## this script will mess an entire IntelliJ project structure up !!######
-
-set -ex
-
-VALID_VERSIONS=( 2.10 2.11 2.12 )
-
-usage() {
-  echo "Usage: $(basename $0) [-h|--help] <version>
-where :
-  -h| --help Display this help text
-  valid version values : ${VALID_VERSIONS[*]}
-" 1>&2
-  exit 1
-}
-
-if [[ ($# -ne 1) || ( $1 == "--help") ||  $1 == "-h" ]]; then
-  usage
-fi
-
-TO_VERSION=$1
-
-check_scala_version() {
-  for i in ${VALID_VERSIONS[*]}; do [ $i = "$1" ] && return 0; done
-  echo "Invalid Scala version: $1. Valid versions: ${VALID_VERSIONS[*]}" 1>&2
-  exit 1
-}
-
-check_scala_version "$TO_VERSION"
-
-if [[ $TO_VERSION != "2.10" && $TO_VERSION != "2.11" ]]; then
-  FROM_VERSION="2.12"
-elif [[ $TO_VERSION != "2.10" && $TO_VERSION !="2.12" ]]; then
-  FROM_VERSION="2.11"
-else [[ $TO_VERSION != "2.11" && $TO_VERSION != "2.12" ]];
-  FROM_VERSION="2.10"
-fi
-
-sed_i() {
-  sed -e "$1" "$2" > "$2.tmp" && mv "$2.tmp" "$2"
-}
-
-export -f sed_i
-
-BASEDIR=$(dirname $0)/..
-find "$BASEDIR" -name 'pom.xml' -not -path '*target*' -print \
-  -exec bash -c "sed_i 's/\(artifactId.*\)_'$FROM_VERSION'/\1_'$TO_VERSION'/g' {}" \;
-
-# Also update <scala.binary.version> in parent POM
-# Match any scala binary version to ensure idempotency
-sed_i '1,/<scala\.compat\.version>[0-9]*\.[0-9]*</s/<scala\.compat\.version>[0-9]*\.[0-9]*</<scala.compat.version>'$TO_VERSION'</' \
-  "$BASEDIR/pom.xml"
-
-#
-# Mahout doesn't need this until we get our website acting right.
-#
-## Update source of scaladocs
-#echo "$BASEDIR/docs/_plugins/copy_api_dirs.rb"
-#sed_i 's/scala\-'$FROM_VERSION'/scala\-'$TO_VERSION'/' "$BASEDIR/docs/_plugins/copy_api_dirs.rb"
diff --git a/buildtools/clover.license b/buildtools/clover.license
deleted file mode 100644
index 8fe0c1a..0000000
--- a/buildtools/clover.license
+++ /dev/null
@@ -1,7 +0,0 @@
-AAABJw0ODAoPeNpdkMtqwzAQRff6CkHXCX60xTUIWmwXAokd6qSrQpkqk0REloUku8nf16/QkO0M5
-9y58/BuBE2RUz+inhcHXhw+0aTc0MDzXkiKlhuhnagVS2TdovmKaaFR0bJuDEeSGIR+m4JD1iMzP
-5j5EUlq5YC7HCpkK3FCuuIc1E6itYQPonneVD9oiv3WorFs5l+ZbAVCsqqDqoF5BQ38iPPaHEjWg
-myGQLYHafHq6jDRInOm+R9JWf/iTp8O2uBenNGyzjAfZUQKjsriZxfdywLShSqHChTH7KyFuUyNf
-G9qNGmXI7i5aBzKFess/y6L7UeSkcIcQAk73vc2BpVZzvzw+TEKQzKxi5QtF+nd8Ca0UVJUwuGOr
-LsfH8Hi/Xf/AKr+lFAwLAIUbZJXXec7rOMv34bm2Jt2aFDczSICFCfzK7TpFe/6TeF2k7ChCciTN
-jKmX02eq
\ No newline at end of file
diff --git a/buildtools/codetemplates.xml b/buildtools/codetemplates.xml
deleted file mode 100644
index 7617ff4..0000000
--- a/buildtools/codetemplates.xml
+++ /dev/null
@@ -1,61 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  Licensed to the Apache Software Foundation (ASF) under one
-  or more contributor license agreements. See the NOTICE file
-  distributed with this work for additional information
-  regarding copyright ownership. The ASF licenses this file
-  to you under the Apache License, Version 2.0 (the
-  "License"); you may not use this file except in compliance
-  with the License. You may obtain a copy of the License at
- 
-  http://www.apache.org/licenses/LICENSE-2.0
- 
-  Unless required by applicable law or agreed to in writing,
-  software distributed under the License is distributed on an
-  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-  KIND, either express or implied. See the License for the
-  specific language governing permissions and limitations
-  under the License.
--->
-<templates><template autoinsert="true" context="gettercomment_context" deleted="false" description="Comment for getter method" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.gettercomment" name="gettercomment">/** * @return Returns the ${bare_field_name}.
- */</template><template autoinsert="true" context="settercomment_context" deleted="false" description="Comment for setter method" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.settercomment" name="settercomment">/**
- * @param ${param} The ${bare_field_name} to set.
- */</template><template autoinsert="true" context="constructorcomment_context" deleted="false" description="Comment for created constructors" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.constructorcomment" name="constructorcomment">/**
- * ${tags}
- */</template><template autoinsert="false" context="filecomment_context" deleted="false" description="Comment for created Java files" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.filecomment" name="filecomment">/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-</template><template autoinsert="false" context="typecomment_context" deleted="false" description="Comment for created types" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.typecomment" name="typecomment">/**
- * ${tags}
- */</template><template autoinsert="false" context="fieldcomment_context" deleted="false" description="Comment for fields" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.fieldcomment" name="fieldcomment"></template><template autoinsert="true" context="methodcomment_context" deleted="false" description="Comment for non-overriding methods" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.methodcomment" name="methodcomment">/**
- * ${tags}
- */</template><template autoinsert="true" context="overridecomment_context" deleted="false" description="Comment for overriding methods" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.overridecomment" name="overridecomment">/** {@inheritDoc}*/</template><template autoinsert="true" context="delegatecomment_context" deleted="false" description="Comment for delegate methods" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.delegatecomment" name="delegatecomment">/**
- * ${tags}
- * ${see_to_target}
- */</template><template autoinsert="true" context="newtype_context" deleted="false" description="Newly created files" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.newtype" name="newtype">${filecomment}
-${package_declaration}
-
-${typecomment}
-${type_declaration}</template><template autoinsert="true" context="classbody_context" deleted="false" description="Code in new class type bodies" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.classbody" name="classbody">
-</template><template autoinsert="true" context="interfacebody_context" deleted="false" description="Code in new interface type bodies" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.interfacebody" name="interfacebody">
-</template><template autoinsert="true" context="enumbody_context" deleted="false" description="Code in new enum type bodies" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.enumbody" name="enumbody">
-</template><template autoinsert="true" context="annotationbody_context" deleted="false" description="Code in new annotation type bodies" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.annotationbody" name="annotationbody">
-</template><template autoinsert="true" context="catchblock_context" deleted="false" description="Code in new catch blocks" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.catchblock" name="catchblock">// ${todo} Auto-generated catch block
-${exception_var}.printStackTrace();</template><template autoinsert="true" context="methodbody_context" deleted="false" description="Code in created method stubs" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.methodbody" name="methodbody">// ${todo} Auto-generated method stub
-${body_statement}</template><template autoinsert="true" context="constructorbody_context" deleted="false" description="Code in created constructor stubs" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.constructorbody" name="constructorbody">${body_statement}
-// ${todo} Auto-generated constructor stub</template><template autoinsert="true" context="getterbody_context" deleted="false" description="Code in created getters" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.getterbody" name="getterbody">return ${field};</template><template autoinsert="true" context="setterbody_context" deleted="false" description="Code in created setters" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.setterbody" name="setterbody">${field} = ${par [...]
diff --git a/buildtools/cross_compile.sh b/buildtools/cross_compile.sh
deleted file mode 100644
index 600fb37..0000000
--- a/buildtools/cross_compile.sh
+++ /dev/null
@@ -1,127 +0,0 @@
-#!/usr/bin/env bash
-# Licensed to the Apache Software Foundation (ASF) under one or more
-# contributor license agreements. See the NOTICE file distributed with
-# this work for additional information regarding copyright ownership.
-# The ASF licenses this file to You under the Apache License, Version 2.0
-# (the "License"); you may not use this file except in compliance with
-# the License. You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-sudo: required
-
-dist: trusty
-
-cache:
-  directories:
-  - $HOME/.m2
-
-install: true
-
-language: java
-
-branches:
-  only:
-   - master
-
-env:
-  global:
-    - JAVA_OPTS=-Xmx3g
-    - TEST_MODULES="core,engine"
-    - STANDARD_BUILD_OPTS="-Dmaven.javadoc.skip=true -B -V"
-    - PROFILES="" # "-Ptravis"
-    - SPARK_1_6=http://d3kbcqa49mib13.cloudfront.net/spark-1.6.3-bin-hadoop2.6.tgz
-    - SPARK_2_0=http://d3kbcqa49mib13.cloudfront.net/spark-2.0.2-bin-hadoop2.7.tgz
-    - SPARK_2_1=http://d3kbcqa49mib13.cloudfront.net/spark-2.1.0-bin-hadoop2.7.tgz
-    - SPARK_2_3=https://archive.apache.org/dist/spark/spark-2.3.0/spark-2.3.0-bin-hadoop2.7.tgz
-
-# The file assumes a certain build order for the maven / nightly build deployments.
-matrix:
-  include:
-    # Default Build: Spark 2.3.0, Scala 2.11
-    - jdk: "openjdk8"
-      env: PROFILES="${PROFILES}" SPARK_BIN=$SPARK_2_3 SCALA_VERSION="2.11"
-
-    # Build Spark 1.6.3 , Scala 2.10
-    #- jdk: "openjdk7"
-    #  env: PROFILES="${PROFILES} -Pscala-2.10 -Pspark-1.6" SPARK_BIN=$SPARK_1_6 SCALA_VERSION="2.10"
-
-    # Build Spark 2.0.2 , Scala 2.11 - replace -D... with profiles when available
-    #- jdk: "openjdk7"
-    #  env: PROFILES="${PROFILES} -Pspark-2.0 -Pscala-2.11" SPARK_BIN=$SPARK_2_0 SCALA_VERSION="2.11"
-
-    # Build Spark 2.1.0 , Scala 2.11 - replace -D... with profiles when available
-    #- jdk: "openjdk7"
-    #  env: PROFILES="${PROFILES} -Pspark-2.1 -Pscala-2.11" SPARK_BIN=$SPARK_2_1 SCALA_VERSION="2.11"
-
-    # Build Spark 1.6.3 , Scala 2.10, ViennaCL
-    #- jdk: "openjdk7"
-    #  env: PROFILES="${PROFILES} -Pscala-2.10 -Pviennacl" SPARK_BIN=$SPARK_1_6 SCALA_VERSION="2.10"
-
-    # Build Spark 2.0.2 , Scala 2.11, ViennaCL - replace -D... with profiles when available
-    #- jdk: "openjdk7"
-    #  env: PROFILES="${PROFILES} -Pspark-2.0 -Pscala-2.11 -Pviennacl" SPARK_BIN=$SPARK_2_0 SCALA_VERSION="2.11"
-
-    # Build Spark 2.1.0 , Scala 2.11, ViennaCL - replace -D... with profiles when available
-    #- jdk: "openjdk7"
-    #  env: PROFILES="${PROFILES} -Pspark-2.1 -Pscala-2.11 -Pviennacl" SPARK_BIN=$SPARK_2_1 SCALA_VERSION="2.11"
-
-    # Build Spark 1.6.3 , Scala 2.10, ViennaCL-OMP
-    #- jdk: "openjdk7"
-    #  env: PROFILES="${PROFILES} -Pscala-2.10 -Pviennacl-omp" TEST_MODULES="${TEST_MODULES},viennacl-omp" SPARK_BIN=$SPARK_1_6 SCALA_VERSION="2.10"
-
-    # Build Spark 2.0.2 , Scala 2.11, ViennaCL-OMP - replace -D... with profiles when available
-    #- jdk: "openjdk7"
-    #  env: PROFILES="${PROFILES} -Pspark-2.0 -Pscala-2.11 -Pviennacl-omp" TEST_MODULES="${TEST_MODULES},viennacl-omp" SPARK_BIN=$SPARK_2_0 SCALA_VERSION="2.11"
-
-    # Build Spark 2.1.0 , Scala 2.11, ViennaCL-OMP - replace -D... with profiles when available
-    #- jdk: "openjdk7"
-    #  env: PROFILES="${PROFILES} -Pspark-2.1 -Pscala-2.11 -Pviennacl-omp" TEST_MODULES="${TEST_MODULES},viennacl-omp" SPARK_BIN=$SPARK_2_1 SCALA_VERSION="2.11"
-
-git:
-  depth: 10
-
-#notifications:
-#  slack: mahout:7vlbihiCBKuhEZK2610jkeeT
-
-before_install:
-# Install Maven 3.3.x+
-  - wget https://archive.apache.org/dist/maven/maven-3/3.3.9/binaries/apache-maven-3.3.9-bin.zip
-  - unzip -qq apache-maven-3.3.9-bin.zip
-  - export M2_HOME=$PWD/apache-maven-3.3.9
-  - export PATH=$M2_HOME/bin:$PATH
-  - export MAHOUT_HOME=$PWD
-  - sudo apt-get -qq update
-  # Install OpenCL Driver
-  - sudo apt-get install ocl-icd-libopencl1
-  # Install ViennaCL Source
-  - wget https://github.com/viennacl/viennacl-dev/archive/release-1.7.1.zip
-  - unzip -qq release-1.7.1.zip
-  - sudo cp -r viennacl-dev-release-1.7.1/viennacl /usr/include/viennacl
-  - sudo cp -r viennacl-dev-release-1.7.1/CL /usr/include/CL
-  # Install SSH Host Client so Spark Pseudo-cluster can start w/out password
-  - sudo apt-get install openssh-client
-  - sudo apt-get install openssh-server
-  - ssh-keygen -t rsa -P "" -f ~/.ssh/id_rsa
-  - cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
-
-
-script:
-  # - buildtools/change-scala-version.sh $SCALA_VERSION
-  # Build Mahout
-  # - mvn clean package $PROFILES $STANDARD_BUILD_OPTS -DskipTests -DskipCli
-  - mvn clean package $STANDARD_BUILD_OPTS -DskipTests -DskipCli
-  # Start Spark
-  - echo $SPARK_BIN
-  - wget $SPARK_BIN
-  - tar -xzf *tgz
-  - spark*/sbin/start-all.sh
-  # Run Tests with Master at spark://localhost:7077
-  - mvn test -pl $TEST_MODULES $PROFILES -Dtest.spark.master=spark://localhost:7077
-
diff --git a/buildtools/pom.xml b/buildtools/pom.xml
deleted file mode 100644
index 4b4ec3b..0000000
--- a/buildtools/pom.xml
+++ /dev/null
@@ -1,153 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
- Licensed to the Apache Software Foundation (ASF) under one or more
- contributor license agreements.  See the NOTICE file distributed with
- this work for additional information regarding copyright ownership.
- The ASF licenses this file to You under the Apache License, Version 2.0
- (the "License"); you may not use this file except in compliance with
- the License.  You may obtain a copy of the License at
-
-     http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
--->
-
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
-  <modelVersion>4.0.0</modelVersion>
-
-  <parent>
-    <groupId>org.apache</groupId>
-    <artifactId>apache</artifactId>
-    <version>23</version>
-    <relativePath />
-  </parent>
-
-  <groupId>org.apache.mahout</groupId>
-  <artifactId>mahout-buildtools</artifactId>
-  <version>14.1-SNAPSHOT</version>
-  <name>Mahout Build Tools</name>
-
-  <packaging>jar</packaging>
-
-  <scm>
-    <connection>scm:git:git@github.com:apache/mahout.git</connection>
-    <developerConnection>scm:git:https://gitbox.apache.org/repos/asf/mahout.git</developerConnection>
-    <url>https://gitbox.apache.org/repos/asf?p=mahout.git;a=tree;h=refs/heads/${project.scm.tag};hb=${project.scm.tag}</url>
-  </scm>
-
-  <properties>
-    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
-  </properties>
-
-  <prerequisites>
-    <maven>3.3.9</maven>
-  </prerequisites>
-
-  <build>
-    <plugins>
-      <plugin>
-        <groupId>org.apache.maven.plugins</groupId>
-        <artifactId>maven-enforcer-plugin</artifactId>
-        <version>1.4</version>
-        <executions>
-          <execution>
-            <id>enforce-versions</id>
-            <goals>
-              <goal>enforce</goal>
-            </goals>
-            <configuration>
-              <rules>
-                <requireJavaVersion>
-                  <version>[1.8,)</version>
-                </requireJavaVersion>
-                  <requireMavenVersion>
-                    <version>[3.3.3,)</version>
-                  </requireMavenVersion>
-              </rules>
-            </configuration>
-          </execution>
-        </executions>
-      </plugin>
-      <plugin>
-        <groupId>org.apache.maven.plugins</groupId>
-        <artifactId>maven-site-plugin</artifactId>
-        <configuration>
-          <skip>true</skip>
-          <skipDeploy>true</skipDeploy>
-        </configuration>
-      </plugin>
-    </plugins>
-  </build>
-
-  <profiles>
-    <profile>
-      <id>setup-eclipse-workspace</id>
-      <properties>
-        <eclipse.workspace.dir>${basedir}/../workspace</eclipse.workspace.dir>
-      </properties>
-      <build>
-        <defaultGoal>process-test-sources</defaultGoal>
-        <plugins>
-          <plugin>
-            <groupId>org.apache.maven.plugins</groupId>
-            <artifactId>maven-eclipse-plugin</artifactId>
-            <version>2.10</version>
-            <inherited>false</inherited>
-            <executions>
-              <execution>
-                <id>setup.eclipse.workspace</id>
-                <phase>process-test-sources</phase>
-                <goals>
-                  <goal>configure-workspace</goal>
-                </goals>
-              </execution>
-            </executions>
-            <configuration>
-              <workspace>${eclipse.workspace.dir}</workspace>
-              <workspaceCodeStylesURL>file:Eclipse-Lucene-Codestyle.xml</workspaceCodeStylesURL>
-            </configuration>
-          </plugin>
-          <plugin>
-            <groupId>org.apache.maven.plugins</groupId>
-            <artifactId>maven-antrun-plugin</artifactId>
-            <version>1.8</version>
-            <inherited>false</inherited>
-            <dependencies>
-              <dependency>
-                <groupId>org.apache.ant</groupId>
-                <artifactId>ant-nodeps</artifactId>
-                <version>1.7.1</version>
-              </dependency>
-              <dependency>
-                <groupId>org.apache.ant</groupId>
-                <artifactId>ant-trax</artifactId>
-                <version>1.7.1</version>
-              </dependency>
-            </dependencies>
-            <executions>
-              <execution>
-                <id>setup.workspace</id>
-                <phase>validate</phase>
-                <configuration>
-                  <tasks>
-                    <ant antfile="${basedir}/setup-eclipse-workspace.xml">
-                      <target name="main" />
-                    </ant>
-                  </tasks>
-                </configuration>
-                <goals>
-                  <goal>run</goal>
-                </goals>
-              </execution>
-            </executions>
-          </plugin>
-        </plugins>
-      </build>
-    </profile>
-  </profiles>
-</project>
diff --git a/buildtools/setup-eclipse-workspace.xml b/buildtools/setup-eclipse-workspace.xml
deleted file mode 100644
index 8202c74..0000000
--- a/buildtools/setup-eclipse-workspace.xml
+++ /dev/null
@@ -1,90 +0,0 @@
-<?xml version="1.0"?>
-<!--
- Licensed to the Apache Software Foundation (ASF) under one or more
- contributor license agreements.  See the NOTICE file distributed with
- this work for additional information regarding copyright ownership.
- The ASF licenses this file to You under the Apache License, Version 2.0
- (the "License"); you may not use this file except in compliance with
- the License.  You may obtain a copy of the License at
-
-     http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
--->
-<!--
-  This is an ANT build.xml file that automates setting up an eclipse workspace. Ironic, eh?
-
-  Input properties: 
-    eclipse.workspace.dir == the workspace
--->
-<project>
-    <target name="main">
-        <property name="full.eclipse.workspace" location="${eclipse.workspace.dir}"/>
-        <mkdir dir="${full.eclipse.workspace}"/>
-        <property name="checkstyle-dir" value="${full.eclipse.workspace}/.metadata/.plugins/net.sf.eclipsecs.core"/>
-        <property name="checkstyle.url" location="../etc/mahout-checkstyle.xml"/>
-        <mkdir dir="${full.eclipse.workspace}/.metadata/.plugins/org.eclipse.core.runtime/.settings"/>
-        <mkdir dir="${checkstyle-dir}"/>
-        <mkdir dir="${full.eclipse.workspace}/.metadata/.plugins/net.sourceforge.pmd.eclipse"/>
-        <copy file="${checkstyle.url}" tofile="${full.eclipse.workspace}/checkstyle.xml"/>
-        <property name="template.checkstyle.url" location="template.checkstyle-config.xml"/>
-        <copy file="${template.checkstyle.url}" tofile="${eclipse.workspace.dir}/template.checkstyle-config.xml"/>
-        <property name="addcheckstyle.url" location="addcheckstyle.xsl"/>
-        <copy file="${addcheckstyle.url}" tofile="${eclipse.workspace.dir}/addcheckstyle.xsl"/>
-        <!-- Add checkstyle config -->
-        <copy file="${eclipse.workspace.dir}/template.checkstyle-config.xml" tofile="${checkstyle-dir}/checkstyle-config.xml" overwrite="no">
-            <filterset>
-                <filter token="CHECKSTYLE_CONFIG_FILE" value="${full.eclipse.workspace}/checkstyle.xml"/>
-                <filter token="APACHE_HEADER_FILE" value="${full.eclipse.workspace}/apache-header.txt"/>
-            </filterset>
-        </copy>
-        <xslt style="${eclipse.workspace.dir}/addcheckstyle.xsl" in="${checkstyle-dir}/checkstyle-config.xml" out="${checkstyle-dir}/checkstyle-config.xml.new">
-            <param name="checkstyleconfig" expression="${full.eclipse.workspace}/checkstyle.xml"/>
-        </xslt>
-        <copy file="${checkstyle-dir}/checkstyle-config.xml.new" tofile="${checkstyle-dir}/checkstyle-config.xml" overwrite="yes"/>
-        <!-- set UTF-8 -->
-        <propertyfile file="${full.eclipse.workspace}/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.core.resources.prefs">
-            <entry key="version" value="1"/>
-            <entry key="eclipse.preferences.version" value="1"/>
-            <entry key="encoding" value="UTF-8"/>
-        </propertyfile>
-        <!-- Add warning flags that we want -->
-        <propertyfile file="${full.eclipse.workspace}/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.core.prefs">
-            <entry key="org.eclipse.jdt.core.compiler.problem.missingSerialVersion" value="ignore"/>
-            <entry key="org.eclipse.jdt.core.compiler.problem.unusedImport" value="ignore"/>
-            <entry key="org.eclipse.jdt.core.compiler.problem.annotationSuperInterface" value="ignore"/>
-            <entry key="org.eclipse.jdt.core.compiler.problem.rawTypeReference" value="ignore"/>
-        </propertyfile>
-        <!-- Add code format rules -->
-        <property name="cleanup.url" location="MahoutCleanUp.xml"/>
-        <copy file="${cleanup.url}" tofile="${eclipse.workspace.dir}/MahoutCleanUp.xml"/>
-        <property name="codeformat.url" location="Eclipse-Lucene-Codestyle.xml"/>
-        <copy file="${codeformat.url}" tofile="${eclipse.workspace.dir}/Eclipse-Lucene-Codestyle.xml"/>
-        <property name="codetemplates.url" location="codetemplates.xml"/>
-        <property name="xmltemplates.url" location="xmltemplates.xml"/>
-        <copy file="${codetemplates.url}" tofile="${eclipse.workspace.dir}/codetemplates.xml"/>
-        <copy file="${xmltemplates.url}" tofile="${eclipse.workspace.dir}/xmltemplates.xml"/>
-        <loadfile property="eclipse.code.cleanup" srcFile="${eclipse.workspace.dir}/MahoutCleanUp.xml"/>
-        <loadfile property="eclipse.code.templates" srcFile="${eclipse.workspace.dir}/codetemplates.xml"/>
-        <loadfile property="eclipse.xml.templates" srcFile="${eclipse.workspace.dir}/xmltemplates.xml"/>
-        <propertyfile file="${full.eclipse.workspace}/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.ui.prefs">
-            <entry key="cleanup_profile" value="_BASIS"/>
-            <entry key="org.eclipse.jdt.ui.cleanupprofiles" value="${eclipse.code.cleanup}"/>
-            <entry key="org.eclipse.jdt.ui.text.custom_code_templates" value="${eclipse.code.templates}"/>
-            <!-- Add import order -->
-            <entry key="org.eclipse.jdt.ui.importorder" value="java;javax;org.w3c;org.xml;junit;com"/>
-            <!-- Sort order -->
-            <entry key="org.eclipse.jdt.ui.visibility.order" value="B,R,D,V,"/>
-            <entry key="outlinesortoption" value="T,SF,F,SI,I,C,SM,M,"/>
-            <entry key="org.eclipse.jdt.ui.enable.visibility.order" value="true"/>
-        </propertyfile>
-        <propertyfile file="${full.eclipse.workspace}/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.wst.xml.ui.prefs">
-            <entry key="eclipse.preferences.version" value="1"/>
-            <entry key="org.eclipse.wst.sse.ui.custom_templates" value="${eclipse.xml.templates}"/>
-        </propertyfile>
-    </target>
-</project>
diff --git a/buildtools/src/main/resources/findbugs-exclude.xml b/buildtools/src/main/resources/findbugs-exclude.xml
deleted file mode 100644
index 8544f55..0000000
--- a/buildtools/src/main/resources/findbugs-exclude.xml
+++ /dev/null
@@ -1,81 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  Licensed to the Apache Software Foundation (ASF) under one
-  or more contributor license agreements. See the NOTICE file
-  distributed with this work for additional information
-  regarding copyright ownership. The ASF licenses this file
-  to you under the Apache License, Version 2.0 (the
-  "License"); you may not use this file except in compliance
-  with the License. You may obtain a copy of the License at
-
-  http://www.apache.org/licenses/LICENSE-2.0
-
-  Unless required by applicable law or agreed to in writing,
-  software distributed under the License is distributed on an
-  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-  KIND, either express or implied. See the License for the
-  specific language governing permissions and limitations
-  under the License.
--->
-<FindBugsFilter>
-  <Match>
-    <Bug pattern="VA_FORMAT_STRING_USES_NEWLINE"/>
-  </Match>
-  <Match>
-    <Bug pattern="OBL_UNSATISFIED_EXCEPTION_EDGE"/>
-  </Match>
-  <Match>
-    <Bug pattern="CN_IDIOM_NO_SUPER_CALL"/>
-  </Match>
-  <Match>
-    <Bug pattern="DLS_DEAD_LOCAL_STORE"/>
-  </Match>
-  <Match>
-    <Bug pattern="DLS_DEAD_LOCAL_STORE_OF_NULL"/>
-  </Match>
-  <Match>
-    <Bug pattern="EI_EXPOSE_REP"/>
-  </Match>
-  <Match>
-    <Bug pattern="EI_EXPOSE_REP2"/>
-  </Match>
-  <Match>
-    <Bug pattern="FE_FLOATING_POINT_EQUALITY"/>
-  </Match>
-  <Match>
-    <Bug pattern="MS_PKGPROTECT"/>
-  </Match>
-  <Match>
-    <Bug pattern="NP_PARAMETER_MUST_BE_NONNULL_BUT_MARKED_AS_NULLABLE"/>
-  </Match>
-  <Match>
-    <Bug pattern="RV_RETURN_VALUE_IGNORED"/>
-  </Match>
-  <Match>
-    <Bug pattern="RV_RETURN_VALUE_IGNORED_BAD_PRACTICE"/>
-  </Match>
-  <Match>
-    <Bug pattern="SE_BAD_FIELD"/>
-  </Match>
-  <Match>
-    <Bug pattern="SE_BAD_FIELD_INNER_CLASS"/>
-  </Match>
-  <Match>
-    <Bug pattern="SE_NO_SERIALVERSIONID"/>
-  </Match>
-  <Match>
-    <Bug pattern="SE_NO_SUITABLE_CONSTRUCTOR"/>
-  </Match>
-  <Match>
-    <Bug pattern="SIC_INNER_SHOULD_BE_STATIC_ANON"/>
-  </Match>
-  <Match>
-    <Bug pattern="SQL_NONCONSTANT_STRING_PASSED_TO_EXECUTE"/>
-  </Match>
-  <Match>
-    <Bug pattern="SQL_PREPARED_STATEMENT_GENERATED_FROM_NONCONSTANT_STRING"/>
-  </Match>
-  <Match>
-    <Bug pattern="UWF_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR"/>
-  </Match>
-</FindBugsFilter>
diff --git a/buildtools/src/main/resources/mahout-checkstyle-suppressions.xml b/buildtools/src/main/resources/mahout-checkstyle-suppressions.xml
deleted file mode 100644
index 41f8fe3..0000000
--- a/buildtools/src/main/resources/mahout-checkstyle-suppressions.xml
+++ /dev/null
@@ -1,34 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE suppressions PUBLIC
-    "-//Puppy Crawl//DTD Suppressions 1.0//EN"
-    "http://www.puppycrawl.com/dtds/suppressions_1_0.dtd">
-<!--
-  Licensed to the Apache Software Foundation (ASF) under one
-  or more contributor license agreements. See the NOTICE file
-  distributed with this work for additional information
-  regarding copyright ownership. The ASF licenses this file
-  to you under the Apache License, Version 2.0 (the
-  "License"); you may not use this file except in compliance
-  with the License. You may obtain a copy of the License at
- 
-  http://www.apache.org/licenses/LICENSE-2.0
- 
-  Unless required by applicable law or agreed to in writing,
-  software distributed under the License is distributed on an
-  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-  KIND, either express or implied. See the License for the
-  specific language governing permissions and limitations
-  under the License.
--->
-<suppressions>
-    <suppress checks=".*"
-              files=".+[\\\/]generated[\\\/].+\.java"
-              />
-    <suppress checks=".*"
-              files=".+[\\\/]build[\\\/]src[\\\/].+\.java"
-              />
-              
-    <suppress checks=".*"
-              files=".+[\\\/]contrib[\\\/].+\.java"
-              />
-</suppressions>
\ No newline at end of file
diff --git a/buildtools/src/main/resources/mahout-checkstyle.xml b/buildtools/src/main/resources/mahout-checkstyle.xml
deleted file mode 100644
index 47b98e4..0000000
--- a/buildtools/src/main/resources/mahout-checkstyle.xml
+++ /dev/null
@@ -1,217 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE module PUBLIC
-    "-//Puppy Crawl//DTD Check Configuration 1.3//EN"
-    "http://www.puppycrawl.com/dtds/configuration_1_3.dtd">
-<!--
-  Licensed to the Apache Software Foundation (ASF) under one
-  or more contributor license agreements. See the NOTICE file
-  distributed with this work for additional information
-  regarding copyright ownership. The ASF licenses this file
-  to you under the Apache License, Version 2.0 (the
-  "License"); you may not use this file except in compliance
-  with the License. You may obtain a copy of the License at
-
-  http://www.apache.org/licenses/LICENSE-2.0
-
-  Unless required by applicable law or agreed to in writing,
-  software distributed under the License is distributed on an
-  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-  KIND, either express or implied. See the License for the
-  specific language governing permissions and limitations
-  under the License.
--->
-
-<!--
-  Checkstyle configuration derived from  the sun coding conventions from:
-
-    - the Java Language Specification at
-      http://java.sun.com/docs/books/jls/second_edition/html/index.html
-
-    - the Sun Code Conventions at http://java.sun.com/docs/codeconv/
--->
-
-<module name="Checker">
-  <!--
-      If you set the basedir property below, then all reported file
-      names will be relative to the specified directory. See
-      http://checkstyle.sourceforge.net/5.x/config.html#Checker
-
-      <property name="basedir" value="${basedir}"/>
-  -->
-
-  <!-- Checks that a package-info.java file exists for each package.     -->
-  <!-- See http://checkstyle.sf.net/config_javadoc.html#JavadocPackage -->
-  <!--module name="JavadocPackage"/-->
-
-  <!-- Checks whether files end with a new line.                        -->
-  <!-- See http://checkstyle.sf.net/config_misc.html#NewlineAtEndOfFile -->
-  <module name="NewlineAtEndOfFile"/>
-
-  <!-- Checks that property files contain the same keys.         -->
-  <!-- See http://checkstyle.sf.net/config_misc.html#Translation -->
-  <module name="Translation"/>
-
-  <!-- Checks for Size Violations.                    -->
-  <!-- See http://checkstyle.sf.net/config_sizes.html -->
-  <!--module name="FileLength"/-->
-
-  <!-- Checks for whitespace                               -->
-  <!-- See http://checkstyle.sf.net/config_whitespace.html -->
-  <module name="FileTabCharacter"/>
-
-  <!-- Miscellaneous other checks.                   -->
-  <!-- See http://checkstyle.sf.net/config_misc.html -->
-  <!--module name="RegexpSingleline">
-    <property name="format" value="\s+$"/>
-    <property name="minimum" value="0"/>
-    <property name="maximum" value="0"/>
-    <property name="message" value="Line has trailing spaces."/>
-  </module-->
-
-  <!-- Checks for Headers                                -->
-  <!-- See http://checkstyle.sf.net/config_header.html   -->
-  <!-- <module name="Header"> -->
-  <!--   <property name="headerFile" value="${checkstyle.header.file}"/> -->
-  <!--   <property name="fileExtensions" value="java"/> -->
-  <!-- </module> -->
-
-  <module name="TreeWalker">
-
-    <!-- Checks for Javadoc comments.                     -->
-    <!-- See http://checkstyle.sf.net/config_javadoc.html -->
-    <!--module name="JavadocMethod"/>
-    <module name="JavadocType"/>
-    <module name="JavadocVariable"/>
-    <module name="JavadocStyle"/-->
-
-
-    <!-- Checks for Naming Conventions.                  -->
-    <!-- See http://checkstyle.sf.net/config_naming.html -->
-    <!-- allow loggers to be named log to not draw to much attention to their invocations -->
-    <module name="ConstantName">
-      <property name="format" value="^([A-Z][A-Z0-9]*(_[A-Z0-9]+)*|log)$"/>
-    </module>
-    <!-- Allow variables to start with capital letters. A lot of algorithm implementations should replicate the
-        notation from the papers they implement to be comprehensible. Matrices e.g. are mostly named with capital
-        letters -->
-    <module name="LocalFinalVariableName">
-      <property name="format" value="^e[a-zA-Z0-9]|[A-Z]*[a-zA-Z0-9]*$"/>
-    </module>
-    <module name="LocalVariableName">
-      <property name="format" value="^e[a-zA-Z0-9]|[A-Z]*[a-zA-Z0-9]*$"/>
-    </module>
-    <module name="MemberName">
-      <property name="format" value="^e[a-zA-Z0-9]|[A-Z]*[a-zA-Z0-9]*$"/>
-    </module>
-    <module name="ParameterName">
-      <property name="format" value="^e[a-zA-Z0-9]|[A-Z]*[a-zA-Z0-9]*$"/>
-    </module>
-    <module name="MethodName"/>
-    <module name="PackageName"/>
-    <module name="StaticVariableName"/>
-    <module name="TypeName"/>
-
-
-    <!-- Checks for imports                              -->
-    <!-- See http://checkstyle.sf.net/config_import.html -->
-    <module name="AvoidStarImport"/>
-    <module name="IllegalImport"/> <!-- defaults to sun.* packages -->
-    <module name="RedundantImport"/>
-    <module name="UnusedImports"/>
-
-
-    <!-- Checks for Size Violations.                    -->
-    <!-- See http://checkstyle.sf.net/config_sizes.html -->
-    <!-- we use 120 instead of 80 characters per line -->
-    <module name="LineLength">
-      <property name="max" value="120"/>
-    </module>
-    <module name="AnonInnerLength">
-      <property name="max" value="40" />
-    </module>
-    <!--module name="ExecutableStatementCount"-->
-    <!--module name="MethodLength"/-->
-    <!--module name="ParameterNumber"/-->
-
-
-    <!-- Checks for whitespace                               -->
-    <!-- See http://checkstyle.sf.net/config_whitespace.html -->
-    <module name="EmptyForIteratorPad"/>
-    <module name="GenericWhitespace"/>
-    <module name="MethodParamPad"/>
-    <module name="NoWhitespaceAfter">
-      <!-- allow whitespaces for array initialization -->
-      <property name="tokens" value="BNOT, DEC, DOT, INC, LNOT, UNARY_MINUS, UNARY_PLUS"/>
-    </module>
-    <module name="NoWhitespaceBefore"/>
-    <module name="OperatorWrap"/>
-    <module name="ParenPad"/>
-    <module name="TypecastParenPad"/>
-    <!--TODO currently broken because of generics <module name="WhitespaceAfter"/>-->
-    <module name="WhitespaceAround">
-      <!-- no need to waste space for empty constructors or methods -->
-      <property name="allowEmptyConstructors" value="true"/>
-      <property name="allowEmptyMethods" value="true"/>
-    </module>
-
-
-    <!-- Modifier Checks                                    -->
-    <!-- See http://checkstyle.sf.net/config_modifiers.html -->
-    <module name="ModifierOrder"/>
-    <module name="RedundantModifier"/>
-
-
-    <!-- Checks for blocks. You know, those {}'s         -->
-    <!-- See http://checkstyle.sf.net/config_blocks.html -->
-    <!--module name="AvoidNestedBlocks"/-->
-    <module name="EmptyBlock"/>
-    <module name="LeftCurly"/>
-    <module name="NeedBraces"/>
-    <module name="RightCurly"/>
-
-
-    <!-- Checks for common coding problems               -->
-    <!-- See http://checkstyle.sf.net/config_coding.html -->
-    <!--module name="AvoidInlineConditionals"/-->
-    <module name="EmptyStatement"/>
-    <module name="EqualsHashCode"/>
-    <!--module name="HiddenField"/-->
-    <module name="IllegalInstantiation"/>
-    <!--module name="InnerAssignment"/-->
-    <!--module name="MagicNumber"/-->
-    <module name="MissingSwitchDefault"/>
-    <!--module name="RedundantThrows"/-->
-    <module name="SimplifyBooleanExpression"/>
-    <module name="SimplifyBooleanReturn"/>
-    <!--module name="NestedIfDepth"/-->
-    <module name="NestedTryDepth">
-      <property name="max" value="3"/>
-    </module>
-    <module name="UnnecessaryParentheses"/>
-
-    <!-- Checks for class design                         -->
-    <!-- See http://checkstyle.sf.net/config_design.html -->
-    <!--module name="DesignForExtension"/-->
-    <module name="FinalClass"/>
-    <module name="HideUtilityClassConstructor"/>
-    <module name="InterfaceIsType"/>
-    <module name="VisibilityModifier">
-      <property name="protectedAllowed" value="true" />
-      <property name="packageAllowed" value="true" />
-    </module>
-
-
-    <!-- Miscellaneous other checks.                   -->
-    <!-- See http://checkstyle.sf.net/config_misc.html -->
-    <module name="ArrayTypeStyle"/>
-    <!--module name="FinalParameters"/-->
-    <!--module name="TodoComment"/-->
-    <module name="UpperEll"/>
-    <module name="Indentation">
-      <property name="caseIndent" value="2"/>
-      <property name="basicOffset" value="2"/>
-    </module>
-
-  </module>
-
-</module>
\ No newline at end of file
diff --git a/buildtools/src/main/resources/mahout-eclipse-checkstyle b/buildtools/src/main/resources/mahout-eclipse-checkstyle
deleted file mode 100644
index 9c76a64..0000000
--- a/buildtools/src/main/resources/mahout-eclipse-checkstyle
+++ /dev/null
@@ -1,27 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  Licensed to the Apache Software Foundation (ASF) under one
-  or more contributor license agreements. See the NOTICE file
-  distributed with this work for additional information
-  regarding copyright ownership. The ASF licenses this file
-  to you under the Apache License, Version 2.0 (the
-  "License"); you may not use this file except in compliance
-  with the License. You may obtain a copy of the License at
- 
-  http://www.apache.org/licenses/LICENSE-2.0
- 
-  Unless required by applicable law or agreed to in writing,
-  software distributed under the License is distributed on an
-  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-  KIND, either express or implied. See the License for the
-  specific language governing permissions and limitations
-  under the License.
--->
-<fileset-config file-format-version="1.1.0" simple-config="false">
-    <fileset name="all" enabled="true" check-config-name="CXF Checks" type="external" description="">
-        <file-match-pattern match-pattern="^src[/\\]." include-pattern="true"/>
-        <file-match-pattern match-pattern="^src[/\\]main[/\\]generated[/\\]." include-pattern="false"/>
-        <file-match-pattern match-pattern="^src[/\\]test[/\\]generated[/\\]." include-pattern="false"/>
-        <file-match-pattern match-pattern="^src[/\\]main[/\\]release[/\\]samples[/\\]jax_rs[/\\]basic_https[/\\]contrib[/\\]." include-pattern="false"/>
-    </fileset>
-</fileset-config>
\ No newline at end of file
diff --git a/buildtools/src/main/resources/mahout-eclipse-pmd b/buildtools/src/main/resources/mahout-eclipse-pmd
deleted file mode 100644
index f1bd7be..0000000
--- a/buildtools/src/main/resources/mahout-eclipse-pmd
+++ /dev/null
@@ -1,23 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  Licensed to the Apache Software Foundation (ASF) under one
-  or more contributor license agreements. See the NOTICE file
-  distributed with this work for additional information
-  regarding copyright ownership. The ASF licenses this file
-  to you under the Apache License, Version 2.0 (the
-  "License"); you may not use this file except in compliance
-  with the License. You may obtain a copy of the License at
- 
-  http://www.apache.org/licenses/LICENSE-2.0
- 
-  Unless required by applicable law or agreed to in writing,
-  software distributed under the License is distributed on an
-  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-  KIND, either express or implied. See the License for the
-  specific language governing permissions and limitations
-  under the License.
--->
-<pmd>
-    <useProjectRuleSet>true</useProjectRuleSet>
-    <rules/>
-</pmd>
\ No newline at end of file
diff --git a/buildtools/src/main/resources/mahout-pmd-ruleset.xml b/buildtools/src/main/resources/mahout-pmd-ruleset.xml
deleted file mode 100644
index b209858..0000000
--- a/buildtools/src/main/resources/mahout-pmd-ruleset.xml
+++ /dev/null
@@ -1,189 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  Licensed to the Apache Software Foundation (ASF) under one
-  or more contributor license agreements. See the NOTICE file
-  distributed with this work for additional information
-  regarding copyright ownership. The ASF licenses this file
-  to you under the Apache License, Version 2.0 (the
-  "License"); you may not use this file except in compliance
-  with the License. You may obtain a copy of the License at
-
-  http://www.apache.org/licenses/LICENSE-2.0
-
-  Unless required by applicable law or agreed to in writing,
-  software distributed under the License is distributed on an
-  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-  KIND, either express or implied. See the License for the
-  specific language governing permissions and limitations
-  under the License.
--->
-<ruleset name="pmd-eclipse">
-    <description>PMD Plugin preferences rule set</description>
-
-
-    <rule ref="rulesets/java/basic.xml/BooleanInstantiation"/>
-    <rule ref="rulesets/java/basic.xml/CollapsibleIfStatements"/>
-    <rule ref="rulesets/java/basic.xml/DoubleCheckedLocking"/>
-    <!--<rule ref="rulesets/java/basic.xml/EmptyCatchBlock"/>-->
-    <rule ref="rulesets/java/basic.xml/EmptyFinallyBlock"/>
-    <rule ref="rulesets/java/basic.xml/EmptyIfStmt"/>
-    <rule ref="rulesets/java/basic.xml/EmptyStatementNotInLoop"/>
-    <!--<rule ref="rulesets/java/basic.xml/EmptyStaticInitializer"/>-->
-    <!--<rule ref="rulesets/java/basic.xml/EmptySwitchStatements"/>-->
-    <rule ref="rulesets/java/basic.xml/EmptySynchronizedBlock"/>
-    <rule ref="rulesets/java/basic.xml/EmptyTryBlock"/>
-    <!--<rule ref="rulesets/java/basic.xml/EmptyWhileStmt"/>-->
-    <rule ref="rulesets/java/basic.xml/ForLoopShouldBeWhileLoop"/>
-    <rule ref="rulesets/java/basic.xml/JumbledIncrementer"/>
-    <rule ref="rulesets/java/basic.xml/OverrideBothEqualsAndHashcode"/>
-    <rule ref="rulesets/java/basic.xml/ReturnFromFinallyBlock"/>
-    <rule ref="rulesets/java/basic.xml/UnconditionalIfStatement"/>
-    <rule ref="rulesets/java/basic.xml/UnnecessaryConversionTemporary"/>
-    <rule ref="rulesets/java/basic.xml/UnnecessaryFinalModifier"/>
-    <rule ref="rulesets/java/basic.xml/UnnecessaryReturn"/>
-    <!--<rule ref="rulesets/java/basic.xml/UselessOverridingMethod"/>-->
-
-    <!--<rule ref="rulesets/java/braces.xml/ForLoopsMustUseBraces"/>-->
-    <!--<rule ref="rulesets/java/braces.xml/IfElseStmtsMustUseBraces"/>-->
-    <!--<rule ref="rulesets/java/braces.xml/IfStmtsMustUseBraces"/>-->
-    <!--<rule ref="rulesets/java/braces.xml/WhileLoopsMustUseBraces"/>-->
-
-    <!--<rule ref="rulesets/java/clone.xml/CloneMethodMustImplementCloneable"/>-->
-    <!--<rule ref="rulesets/java/clone.xml/CloneThrowsCloneNotSupportedException"/>-->
-    <!--<rule ref="rulesets/java/clone.xml/ProperCloneImplementation"/>-->
-
-    <!--<rule ref="rulesets/java/codesize.xml/CyclomaticComplexity"/>-->
-    <rule ref="rulesets/java/codesize.xml/ExcessiveClassLength"/>
-    <!--<rule ref="rulesets/java/codesize.xml/ExcessiveMethodLength"/>-->
-    <rule ref="rulesets/java/codesize.xml/ExcessiveParameterList"/>
-    <rule ref="rulesets/java/codesize.xml/ExcessivePublicCount"/>
-    <!--<rule ref="rulesets/java/codesize.xml/TooManyFields"/>-->
-
-    <!--<rule ref="rulesets/java/controversial.xml/AssignmentInOperand"/>-->
-    <!--<rule ref="rulesets/java/controversial.xml/AtLeastOneConstructor"/>-->
-    <!--<rule ref="rulesets/java/controversial.xml/CallSuperInConstructor"/>-->
-    <!--<rule ref="rulesets/java/controversial.xml/DontImportSun"/>-->
-    <!--<rule ref="rulesets/java/controversial.xml/NullAssignment"/>-->
-    <!--<rule ref="rulesets/java/controversial.xml/OnlyOneReturn"/>-->
-    <!--<rule ref="rulesets/java/controversial.xml/SingularField"/>-->
-    <!--<rule ref="rulesets/java/controversial.xml/SuspiciousOctalEscape"/>-->
-    <!--<rule ref="rulesets/java/controversial.xml/UnnecessaryConstructor"/>-->
-    <!--<rule ref="rulesets/java/controversial.xml/UnnecessaryParentheses"/>-->
-    <!--<rule ref="rulesets/java/controversial.xml/UnusedModifier"/>-->
-
-    <!--<rule ref="rulesets/java/coupling.xml/CouplingBetweenObjects"/>-->
-    <!--<rule ref="rulesets/java/coupling.xml/ExcessiveImports"/>-->
-    <!--<rule ref="rulesets/java/coupling.xml/LooseCoupling"/>-->
-
-    <!--<rule ref="rulesets/java/design.xml/AbstractClassWithoutAbstractMethod"/>-->
-    <!--<rule ref="rulesets/java/design.xml/AccessorClassGeneration"/>-->
-    <!--<rule ref="rulesets/java/design.xml/AssignmentToNonFinalStatic"/>-->
-    <!--<rule ref="rulesets/java/design.xml/AvoidDeeplyNestedIfStmts"/>-->
-    <!--<rule ref="rulesets/java/design.xml/AvoidInstanceofChecksInCatchClause"/>-->
-    <rule ref="rulesets/java/design.xml/AvoidProtectedFieldInFinalClass"/>
-    <!--<rule ref="rulesets/java/design.xml/AvoidReassigningParameters"/>-->
-    <!--<rule ref="rulesets/java/design.xml/AvoidSynchronizedAtMethodLevel"/>-->
-    <!--<rule ref="rulesets/java/design.xml/BadComparison"/>-->
-    <!--<rule ref="rulesets/java/design.xml/CloseConnection"/>-->
-    <!--<rule ref="rulesets/java/design.xml/CompareObjectsWithEquals"/>-->
-    <!--<rule ref="rulesets/java/design.xml/ConfusingTernary"/>-->
-    <!--<rule ref="rulesets/java/design.xml/ConstructorCallsOverridableMethod"/>-->
-    <!--<rule ref="rulesets/java/design.xml/DefaultLabelNotLastInSwitchStmt"/>-->
-    <!--<rule ref="rulesets/java/design.xml/FinalFieldCouldBeStatic"/>-->
-    <rule ref="rulesets/java/design.xml/IdempotentOperations"/>
-    <!--<rule ref="rulesets/java/design.xml/ImmutableField"/>-->
-    <!--<rule ref="rulesets/java/design.xml/InstantiationToGetClass"/>-->
-    <!--<rule ref="rulesets/java/design.xml/MissingBreakInSwitch"/>-->
-    <!--<rule ref="rulesets/java/design.xml/MissingStaticMethodInNonInstantiatableClass"/>-->
-    <!--<rule ref="rulesets/java/design.xml/NonCaseLabelInSwitchStatement"/>-->
-    <!--<rule ref="rulesets/java/design.xml/NonStaticInitializer"/>-->
-    <rule ref="rulesets/java/design.xml/OptimizableToArrayCall"/>
-    <!--<rule ref="rulesets/java/design.xml/PositionLiteralsFirstInComparisons"/>-->
-    <!--rule ref="rulesets/java/design.xml/SimplifyBooleanExpressions"/-->
-    <rule ref="rulesets/java/design.xml/SimplifyBooleanReturns"/>
-    <rule ref="rulesets/java/design.xml/SimplifyConditional"/>
-    <!--<rule ref="rulesets/java/design.xml/SwitchDensity"/>-->
-    <!--<rule ref="rulesets/java/design.xml/SwitchStmtsShouldHaveDefault"/>-->
-    <rule ref="rulesets/java/design.xml/UnnecessaryLocalBeforeReturn"/>
-    <!--<rule ref="rulesets/java/design.xml/UseLocaleWithCaseConversions"/>-->
-    <!--<rule ref="rulesets/java/design.xml/UseNotifyAllInsteadOfNotify"/>-->
-    <!--<rule ref="rulesets/java/design.xml/UseSingleton"/>-->
-
-    <!--<rule ref="rulesets/java/finalizers.xml/EmptyFinalizer"/>-->
-    <!--<rule ref="rulesets/java/finalizers.xml/FinalizeOnlyCallsSuperFinalize"/>-->
-    <!--<rule ref="rulesets/java/finalizers.xml/FinalizeOverloaded"/>-->
-    <!--<rule ref="rulesets/java/finalizers.xml/FinalizeDoesNotCallSuperFinalize"/>-->
-    <!--<rule ref="rulesets/java/finalizers.xml/FinalizeShouldBeProtected"/>-->
-    <rule ref="rulesets/java/finalizers.xml/AvoidCallingFinalize"/>
-
-    <rule ref="rulesets/java/imports.xml/DuplicateImports"/>
-    <rule ref="rulesets/java/imports.xml/DontImportJavaLang"/>
-    <rule ref="rulesets/java/imports.xml/UnusedImports"/>
-    <rule ref="rulesets/java/imports.xml/ImportFromSamePackage"/>
-
-    <!--<rule ref="rulesets/java/javabeans.xml/BeanMembersShouldSerialize"/>-->
-    <!--<rule ref="rulesets/java/javabeans.xml/MissingSerialVersionUID"/>-->
-
-    <!--<rule ref="rulesets/java/junit.xml/JUnitStaticSuite"/>-->
-    <!--<rule ref="rulesets/java/junit.xml/JUnitSpelling"/>-->
-    <!--<rule ref="rulesets/java/junit.xml/JUnitAssertionsShouldIncludeMessage"/>-->
-    <!--<rule ref="rulesets/java/junit.xml/JUnitTestsShouldIncludeAssert"/>-->
-    <!--<rule ref="rulesets/java/junit.xml/TestClassWithoutTestCases"/>-->
-    <!--<rule ref="rulesets/java/junit.xml/UnnecessaryBooleanAssertion"/>-->
-    <!--<rule ref="rulesets/java/junit.xml/UseAssertEqualsInsteadOfAssertTrue"/>-->
-    <!--<rule ref="rulesets/java/junit.xml/UseAssertSameInsteadOfAssertTrue"/>-->
-
-    <rule ref="rulesets/java/logging-java.xml/AvoidPrintStackTrace"/>
-    <rule ref="rulesets/java/logging-java.xml/LoggerIsNotStaticFinal"/>
-    <!--<rule ref="rulesets/java/logging-java.xml/MoreThanOneLogger"/>-->
-    <!--<rule ref="rulesets/java/logging-java.xml/LoggerIsNotStaticFinal"/>-->
-    <!--<rule ref="rulesets/java/logging-java.xml/LogBlockWithoutIf"/>-->
-    <!--<rule ref="rulesets/java/logging-java.xml/SystemPrintln"/>-->
-    <!--<rule ref="rulesets/java/logging-jakarta-commons.xml/UseCorrectExceptionLogging"/>-->
-    <!--<rule ref="rulesets/java/logging-jakarta-commons.xml/ProperLogger"/>-->
-
-    <!--<rule ref="rulesets/java/naming.xml/ShortVariable"/>-->
-    <!--<rule ref="rulesets/java/naming.xml/LongVariable"/>-->
-    <!--<rule ref="rulesets/java/naming.xml/ShortMethodName"/>-->
-    <!--<rule ref="rulesets/java/naming.xml/VariableNamingConventions"/>-->
-    <rule ref="rulesets/java/naming.xml/MethodNamingConventions"/>
-    <rule ref="rulesets/java/naming.xml/ClassNamingConventions"/>
-    <!--<rule ref="rulesets/java/naming.xml/AbstractNaming"/>-->
-    <!--<rule ref="rulesets/java/naming.xml/AvoidDollarSigns"/>-->
-    <!--<rule ref="rulesets/java/naming.xml/MethodWithSameNameAsEnclosingClass"/>-->
-    <!--<rule ref="rulesets/java/naming.xml/SuspiciousHashcodeMethodName"/>-->
-    <!--<rule ref="rulesets/java/naming.xml/SuspiciousConstantFieldName"/>-->
-    <!--<rule ref="rulesets/java/naming.xml/AvoidFieldNameMatchingTypeName"/>-->
-    <!--<rule ref="rulesets/java/naming.xml/AvoidFieldNameMatchingMethodName"/>-->
-    <!-- <rule ref="rulesets/java/naming.xml/AvoidNonConstructorMethodsWithClassName"/> -->
-    <rule ref="rulesets/java/naming.xml/NoPackage"/>
-    <rule ref="rulesets/java/naming.xml/PackageCase"/>
-
-    <!--<rule ref="rulesets/java/optimizations.xml/LocalVariableCouldBeFinal"/>-->
-    <!--<rule ref="rulesets/java/optimizations.xml/MethodArgumentCouldBeFinal"/>-->
-    <!--<rule ref="rulesets/java/optimizations.xml/AvoidInstantiatingObjectsInLoops"/>-->
-    <!--<rule ref="rulesets/java/optimizations.xml/UseArrayListInsteadOfVector"/>-->
-    <!--<rule ref="rulesets/java/optimizations.xml/SimplifyStartsWith"/>-->
-    <rule ref="rulesets/java/optimizations.xml/UseStringBufferForStringAppends"/>
-
-    <!--<rule ref="rulesets/java/strictexception.xml/AvoidCatchingThrowable"/>-->
-    <!--<rule ref="rulesets/java/strictexception.xml/SignatureDeclareThrowsException"/>-->
-    <rule ref="rulesets/java/strictexception.xml/ExceptionAsFlowControl"/>
-    <!--<rule ref="rulesets/java/strictexception.xml/AvoidCatchingNPE"/>-->
-    <!--<rule ref="rulesets/java/strictexception.xml/AvoidThrowingRawExceptionTypes"/>-->
-    <!--<rule ref="rulesets/java/strictexception.xml/AvoidThrowingNullPointerException"/>-->
-
-    <!--<rule ref="rulesets/java/strings.xml/AvoidDuplicateLiterals"/>-->
-    <rule ref="rulesets/java/strings.xml/StringInstantiation"/>
-    <rule ref="rulesets/java/strings.xml/StringToString"/>
-    <!-- <rule ref="rulesets/java/strings.xml/AvoidConcatenatingNonLiteralsInStringBuffer"/>-->
-    <rule ref="rulesets/java/strings.xml/UnnecessaryCaseChange"/>
-
-    <!--<rule ref="rulesets/java/sunsecure.xml/MethodReturnsInternalArray"/>-->
-    <!--<rule ref="rulesets/java/sunsecure.xml/ArrayIsStoredDirectly"/>-->
-
-    <rule ref="rulesets/java/unusedcode.xml/UnusedLocalVariable"/>
-    <rule ref="rulesets/java/unusedcode.xml/UnusedPrivateField"/>
-    <rule ref="rulesets/java/unusedcode.xml/UnusedPrivateMethod"/>
-    <rule ref="rulesets/java/unusedcode.xml/UnusedFormalParameter"/>
-</ruleset>
diff --git a/buildtools/src/test/resources/jaas.config b/buildtools/src/test/resources/jaas.config
deleted file mode 100644
index f3c6222..0000000
--- a/buildtools/src/test/resources/jaas.config
+++ /dev/null
@@ -1,19 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-hadoop-simple {
-  com.sun.security.auth.module.UnixLoginModule required ;
-}
diff --git a/buildtools/src/test/resources/java.policy b/buildtools/src/test/resources/java.policy
deleted file mode 100644
index 6237816..0000000
--- a/buildtools/src/test/resources/java.policy
+++ /dev/null
@@ -1,134 +0,0 @@
-//
-// Licensed to the Apache Software Foundation (ASF) under one or more
-// contributor license agreements.  See the NOTICE file distributed with
-// this work for additional information regarding copyright ownership.
-// The ASF licenses this file to You under the Apache License, Version 2.0
-// (the "License"); you may not use this file except in compliance with
-// the License.  You may obtain a copy of the License at
-//
-//     http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS,
-// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// See the License for the specific language governing permissions and
-// limitations under the License.
-//
-
-// Allows unit tests to run with a Java Security Manager
-// Tested from Maven 3.0.3 with the Surfire 2.8.1 configuration:
-//
-// <argLine>-Djava.security.manager -Djava.security.policy=${basedir}/src/test/resources/java.policy</argLine>
-//
-// This policy file documents why each permission is granted by listing exceptions in comments.
-//
-// This policy file grants permission as narrowly as possible.
- 
-grant {
-
-  permission java.io.FilePermission "${user.dir}/target/-", "read, write, delete";
-
-  permission java.util.PropertyPermission "user.dir", "write";
-  permission java.util.PropertyPermission "localRepository", "write";
-  permission java.util.PropertyPermission "mahout.test.directory", "write";
-  permission java.util.PropertyPermission "basedir", "write";
-  permission java.util.PropertyPermission "java.class.path", "read";
-  permission java.util.PropertyPermission "surefire.real.class.path", "write";
-  permission java.util.PropertyPermission "java.class.path", "write";
-  permission java.util.PropertyPermission "surefire.test.class.path", "write";
-  permission java.util.PropertyPermission "surefire.junit4.upgradecheck", "read";
-  permission java.util.PropertyPermission "*", "read,write";
-
-  permission java.lang.RuntimePermission "setIO";
-  permission java.lang.RuntimePermission "accessDeclaredMembers";
-  permission java.lang.RuntimePermission "exitVM.0";
-  permission java.lang.RuntimePermission "exitVM.1";
-  permission java.lang.RuntimePermission "exitVM.2";
-  permission java.lang.reflect.ReflectPermission "suppressAccessChecks";
-  permission javax.security.auth.AuthPermission "getSubject";
-  permission javax.security.auth.AuthPermission "createLoginContext.*";
-  permission java.lang.RuntimePermission "setContextClassLoader";
-  permission java.lang.RuntimePermission "createClassLoader";
-  permission java.lang.RuntimePermission "getClassLoader";
-  permission java.lang.RuntimePermission "enableContextClasLoaderOverride";
-  permission java.lang.RuntimePermission "modifyThread";
-  permission java.lang.RuntimePermission "getProtectionDomain";
-  permission java.lang.RuntimePermission "getenv.*";
-  permission java.lang.RuntimePermission "accessClassInPackage.sun.reflect";
-  permission javax.security.auth.AuthPermission "doAs";
-  permission javax.security.auth.AuthPermission "doAsPriviledged";
-  permission javax.security.auth.AuthPermission "getSubject";
-  permission javax.security.auth.kerberos.ServicePermission "*", "initiate";
-  permission javax.security.auth.kerberos.ServicePermission "*", "accept";
-  permission java.lang.RuntimePermission "setDefaultUncaughtExceptionHandler";
-  permission java.lang.RuntimePermission "modifyThreadGroup";
-  permission java.lang.RuntimePermission "getStackTrace";
-};
-
-//
-// Licensed to the Apache Software Foundation (ASF) under one or more
-// contributor license agreements.  See the NOTICE file distributed with
-// this work for additional information regarding copyright ownership.
-// The ASF licenses this file to You under the Apache License, Version 2.0
-// (the "License"); you may not use this file except in compliance with
-// the License.  You may obtain a copy of the License at
-//
-//     http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS,
-// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// See the License for the specific language governing permissions and
-// limitations under the License.
-//
-
-// Allows unit tests to run with a Java Security Manager
-// Tested from Maven 3.0.3 with the Surfire 2.8.1 configuration:
-//
-// <argLine>-Djava.security.manager -Djava.security.policy=${basedir}/src/test/resources/java.policy</argLine>
-//
-// This policy file documents why each permission is granted by listing exceptions in comments.
-//
-// This policy file grants permission as narrowly as possible.
- 
-grant {
-
-  permission java.io.FilePermission "${user.dir}/target/-", "read, write, delete";
-
-  permission java.util.PropertyPermission "user.dir", "write";
-  permission java.util.PropertyPermission "localRepository", "write";
-  permission java.util.PropertyPermission "mahout.test.directory", "write";
-  permission java.util.PropertyPermission "basedir", "write";
-  permission java.util.PropertyPermission "java.class.path", "read";
-  permission java.util.PropertyPermission "surefire.real.class.path", "write";
-  permission java.util.PropertyPermission "java.class.path", "write";
-  permission java.util.PropertyPermission "surefire.test.class.path", "write";
-  permission java.util.PropertyPermission "surefire.junit4.upgradecheck", "read";
-  permission java.util.PropertyPermission "*", "read,write";
-
-  permission java.lang.RuntimePermission "setIO";
-  permission java.lang.RuntimePermission "accessDeclaredMembers";
-  permission java.lang.RuntimePermission "exitVM.0";
-  permission java.lang.RuntimePermission "exitVM.1";
-  permission java.lang.RuntimePermission "exitVM.2";
-  permission java.lang.reflect.ReflectPermission "suppressAccessChecks";
-  permission javax.security.auth.AuthPermission "getSubject";
-  permission javax.security.auth.AuthPermission "createLoginContext.*";
-  permission java.lang.RuntimePermission "setContextClassLoader";
-  permission java.lang.RuntimePermission "createClassLoader";
-  permission java.lang.RuntimePermission "getClassLoader";
-  permission java.lang.RuntimePermission "enableContextClasLoaderOverride";
-  permission java.lang.RuntimePermission "modifyThread";
-  permission java.lang.RuntimePermission "getProtectionDomain";
-  permission java.lang.RuntimePermission "getenv.*";
-  permission java.lang.RuntimePermission "accessClassInPackage.sun.reflect";
-  permission javax.security.auth.AuthPermission "doAs";
-  permission javax.security.auth.AuthPermission "doAsPriviledged";
-  permission javax.security.auth.AuthPermission "getSubject";
-  permission javax.security.auth.kerberos.ServicePermission "*", "initiate";
-  permission javax.security.auth.kerberos.ServicePermission "*", "accept";
-  permission java.lang.RuntimePermission "setDefaultUncaughtExceptionHandler";
-  permission java.lang.RuntimePermission "modifyThreadGroup";
-  permission java.lang.RuntimePermission "getStackTrace";
-};
-
diff --git a/buildtools/template.checkstyle-config.xml b/buildtools/template.checkstyle-config.xml
deleted file mode 100644
index 86a220b..0000000
--- a/buildtools/template.checkstyle-config.xml
+++ /dev/null
@@ -1,23 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  Licensed to the Apache Software Foundation (ASF) under one
-  or more contributor license agreements. See the NOTICE file
-  distributed with this work for additional information
-  regarding copyright ownership. The ASF licenses this file
-  to you under the Apache License, Version 2.0 (the
-  "License"); you may not use this file except in compliance
-  with the License. You may obtain a copy of the License at
- 
-  http://www.apache.org/licenses/LICENSE-2.0
- 
-  Unless required by applicable law or agreed to in writing,
-  software distributed under the License is distributed on an
-  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-  KIND, either express or implied. See the License for the
-  specific language governing permissions and limitations
-  under the License.
--->
-<checkstyle-configurations file-format-version="5.0.0">
-    <check-configuration name="CXF Checks" location="@CHECKSTYLE_CONFIG_FILE@" type="external" description=""/>
-    <check-configuration name="CXF CORBA Checks" location="@CHECKSTYLE_CORBA_CONFIG_FILE@" type="external" description=""/>
-</checkstyle-configurations>
\ No newline at end of file
diff --git a/buildtools/xmltemplates.xml b/buildtools/xmltemplates.xml
deleted file mode 100644
index 92c2bcd..0000000
--- a/buildtools/xmltemplates.xml
+++ /dev/null
@@ -1,38 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  Licensed to the Apache Software Foundation (ASF) under one
-  or more contributor license agreements. See the NOTICE file
-  distributed with this work for additional information
-  regarding copyright ownership. The ASF licenses this file
-  to you under the Apache License, Version 2.0 (the
-  "License"); you may not use this file except in compliance
-  with the License. You may obtain a copy of the License at
- 
-  http://www.apache.org/licenses/LICENSE-2.0
- 
-  Unless required by applicable law or agreed to in writing,
-  software distributed under the License is distributed on an
-  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-  KIND, either express or implied. See the License for the
-  specific language governing permissions and limitations
-  under the License.
--->
-<templates><template autoinsert="true" context="xml_new" deleted="false" description="xml declaration" enabled="true" id="org.eclipse.wst.xml.ui.internal.templates.xmldeclaration" name="xml declaration">&lt;?xml version="1.0" encoding="${encoding}"?&gt;
-&lt;!--
-  Licensed to the Apache Software Foundation (ASF) under one
-  or more contributor license agreements. See the NOTICE file
-  distributed with this work for additional information
-  regarding copyright ownership. The ASF licenses this file
-  to you under the Apache License, Version 2.0 (the
-  "License"); you may not use this file except in compliance
-  with the License. You may obtain a copy of the License at
- 
-  http://www.apache.org/licenses/LICENSE-2.0
- 
-  Unless required by applicable law or agreed to in writing,
-  software distributed under the License is distributed on an
-  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-  KIND, either express or implied. See the License for the
-  specific language governing permissions and limitations
-  under the License.
---&gt;</template></templates>
diff --git a/community/community-engines/flink-batch/pom.xml b/community/community-engines/flink-batch/pom.xml
deleted file mode 100644
index 75462f4..0000000
--- a/community/community-engines/flink-batch/pom.xml
+++ /dev/null
@@ -1,188 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
- Licensed to the Apache Software Foundation (ASF) under one or more
- contributor license agreements.  See the NOTICE file distributed with
- this work for additional information regarding copyright ownership.
- The ASF licenses this file to You under the Apache License, Version 2.0
- (the "License"); you may not use this file except in compliance with
- the License.  You may obtain a copy of the License at
-
-     http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
--->
-
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
-  <modelVersion>4.0.0</modelVersion>
-
-  <parent>
-    <groupId>org.apache.mahout</groupId>
-    <artifactId>mahout-community-engines</artifactId>
-    <version>14.1-SNAPSHOT</version>
-  </parent>
-
-  <artifactId>mahout-flink-batch</artifactId>
-  <packaging>jar</packaging>
-
-  <name>-- Mahout Flink Engine (Community)</name>
-  <description>Mahout Bindings for Apache Flink</description>
-
-  <build>
-    <plugins>
-      <plugin>
-        <groupId>net.alchim31.maven</groupId>
-        <artifactId>scala-maven-plugin</artifactId>
-        <executions>
-          <!--execution>
-            <id>add-scala-sources</id>
-            <phase>initialize</phase>
-            <goals>
-              <goal>add-source</goal>
-            </goals>
-          </execution-->
-          <execution>
-            <id>scala-compile</id>
-            <phase>compile</phase>
-            <goals>
-              <goal>compile</goal>
-            </goals>
-          </execution>
-          <execution>
-            <id>scala-test-compile</id>
-            <phase>test-compile</phase>
-            <goals>
-              <goal>testCompile</goal>
-            </goals>
-          </execution>
-        </executions>
-      </plugin>
-
-      <!--this is what scalatest recommends to do to enable scala tests -->
-      <!-- disable surefire -->
-      <plugin>
-        <groupId>org.apache.maven.plugins</groupId>
-        <artifactId>maven-surefire-plugin</artifactId>
-        <configuration>
-          <skipTests>true</skipTests>
-        </configuration>
-      </plugin>
-
-      <!-- enable scalatest -->
-      <plugin>
-        <groupId>org.scalatest</groupId>
-        <artifactId>scalatest-maven-plugin</artifactId>
-        <executions>
-          <execution>
-            <id>scala-test</id>
-            <goals>
-              <goal>test</goal>
-            </goals>
-            <configuration>
-              <systemProperties combine.children="append">
-                <mahout.home>${project.build.testOutputDirectory}</mahout.home>
-              </systemProperties>
-              <argLine>-Xmx4g</argLine>
-            </configuration>
-          </execution>
-        </executions>
-      </plugin>
-
-      <!-- Change the default configuration of the jar plugin to use a scala classifier to attach the jar. -->
-      <plugin>
-        <groupId>org.apache.maven.plugins</groupId>
-        <artifactId>maven-jar-plugin</artifactId>
-        <executions>
-          <execution>
-            <id>default-jar</id>
-            <configuration>
-              <classifier>scala_${scala.compat.version}</classifier>
-            </configuration>
-          </execution>
-        </executions>
-      </plugin>
-    </plugins>
-  </build>
-
-  <dependencies>
-    <dependency>
-      <groupId>org.apache.mahout</groupId>
-      <artifactId>mahout-core</artifactId>
-      <version>14.1-SNAPSHOT</version>
-      <classifier>scala_${scala.compat.version}</classifier>
-    </dependency>
-
-    <dependency>
-      <groupId>org.apache.mahout</groupId>
-      <artifactId>mahout-hdfs</artifactId>
-      <version>14.1-SNAPSHOT</version>
-      <exclusions>
-        <exclusion>
-          <groupId>asm</groupId>
-          <artifactId>asm</artifactId>
-        </exclusion>
-      </exclusions>
-    </dependency>
-
-    <!--  3rd-party -->
-    <dependency>
-      <groupId>org.apache.flink</groupId>
-      <artifactId>flink-runtime_${scala.compat.version}</artifactId>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.flink</groupId>
-      <artifactId>flink-scala_${scala.compat.version}</artifactId>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.flink</groupId>
-      <artifactId>flink-java</artifactId>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.flink</groupId>
-      <artifactId>flink-core</artifactId>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.flink</groupId>
-      <artifactId>flink-clients_${scala.compat.version}</artifactId>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.flink</groupId>
-      <artifactId>flink-test-utils_${scala.compat.version}</artifactId>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.flink</groupId>
-      <artifactId>flink-tests_${scala.compat.version}</artifactId>
-    </dependency>
-
-    <dependency>
-      <groupId>com.google.guava</groupId>
-      <artifactId>guava</artifactId>
-    </dependency>
-
-    <!-- tests -->
-    <dependency>
-      <groupId>org.apache.mahout</groupId>
-      <!--<artifactId>mahout-math-scala_${scala.compat.version}</artifactId>-->
-      <artifactId>mahout-core</artifactId>
-      <version>14.1-SNAPSHOT</version>
-      <classifier>test_scala_${scala.compat.version}</classifier>
-      <scope>test</scope>
-    </dependency>
-
-    <dependency>
-      <groupId>junit</groupId>
-      <artifactId>junit</artifactId>
-      <scope>test</scope>
-    </dependency>
-    <dependency>
-      <groupId>org.scalatest</groupId>
-      <artifactId>scalatest_${scala.compat.version}</artifactId>
-      <scope>test</scope>
-    </dependency>
-  </dependencies>
-
-</project>
diff --git a/community/community-engines/flink-batch/src/main/resources/log4j.properties b/community/community-engines/flink-batch/src/main/resources/log4j.properties
deleted file mode 100644
index d4ea9b3..0000000
--- a/community/community-engines/flink-batch/src/main/resources/log4j.properties
+++ /dev/null
@@ -1,27 +0,0 @@
-#
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements.  See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership.  The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-# with the License.  You may obtain a copy of the License at
-#
-#   http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing,
-# software distributed under the License is distributed on an
-# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-# KIND, either express or implied.  See the License for the
-# specific language governing permissions and limitations
-# under the License.
-#
-
-# Root logger option
-log4j.rootLogger=info, stdout
-
-# Direct log messages to stdout
-log4j.appender.stdout=org.apache.log4j.ConsoleAppender
-log4j.appender.stdout.target=System.out 
-log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
-log4j.appender.stdout.layout.conversionPattern=%d{ABSOLUTE} %5p %t %c{1}:%M:%L - %m%n 
\ No newline at end of file
diff --git a/community/community-engines/flink-batch/src/main/scala/org/apache/mahout/flinkbindings/FlinkByteBCast.scala b/community/community-engines/flink-batch/src/main/scala/org/apache/mahout/flinkbindings/FlinkByteBCast.scala
deleted file mode 100644
index 5cdfb79..0000000
--- a/community/community-engines/flink-batch/src/main/scala/org/apache/mahout/flinkbindings/FlinkByteBCast.scala
+++ /dev/null
@@ -1,90 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.mahout.flinkbindings
-
-import org.apache.mahout.math.Matrix
-import org.apache.mahout.math.MatrixWritable
-import org.apache.mahout.math.Vector
-import org.apache.mahout.math.VectorWritable
-import org.apache.mahout.math.drm.BCast
-
-import com.google.common.io.ByteStreams
-
-/**
- * FlinkByteBCast wraps vector/matrix objects, represents them as byte arrays, and when 
- * it's used in UDFs, they are serialized using standard Java serialization along with 
- * UDFs (as a part of closure) and broadcasted to worker nodes. 
- * 
- * There should be a smarter way of doing it with some macro and then rewriting the UDF and 
- * appending `withBroadcastSet` to flink dataSet pipeline, but it's not implemented at the moment.  
- */
-class FlinkByteBCast[T](private val arr: Array[Byte]) extends BCast[T] with Serializable {
-
-  private lazy val _value = {
-    val stream = ByteStreams.newDataInput(arr)
-    val streamType = stream.readInt()
-
-    if (streamType == FlinkByteBCast.StreamTypeVector) {
-      val writeable = new VectorWritable()
-      writeable.readFields(stream)
-    //  printf("broadcastValue: \n%s\n",writeable.get.asInstanceOf[T])
-      writeable.get.asInstanceOf[T]
-    } else if (streamType == FlinkByteBCast.StreamTypeMatrix) {
-      val writeable = new MatrixWritable()
-      writeable.readFields(stream)
-     // printf("broadcastValue: \n%s\n",writeable.get.asInstanceOf[T])
-      writeable.get.asInstanceOf[T]
-    } else {
-      throw new IllegalArgumentException(s"unexpected type tag $streamType")
-    }
-
-  }
-
-  override def value: T = _value
-
-  override def close: Unit = {
-    // nothing to close
-  }
-
-}
-
-object FlinkByteBCast {
-
-  val StreamTypeVector = 0x0000
-  val StreamTypeMatrix = 0xFFFF
-
-  def wrap(v: Vector): FlinkByteBCast[Vector] = {
-    val writeable = new VectorWritable(v)
-    val dataOutput = ByteStreams.newDataOutput()
-    dataOutput.writeInt(StreamTypeVector)
-    writeable.write(dataOutput)
-    val array = dataOutput.toByteArray()
-    new FlinkByteBCast[Vector](array)
-  }
-
-  def wrap(m: Matrix): FlinkByteBCast[Matrix] = {
-    val writeable = new MatrixWritable(m)
-    val dataOutput = ByteStreams.newDataOutput()
-    dataOutput.writeInt(StreamTypeMatrix)
-    writeable.write(dataOutput)
-    val array = dataOutput.toByteArray()
-    new FlinkByteBCast[Matrix](array)
-  }
-
-}
\ No newline at end of file
diff --git a/community/community-engines/flink-batch/src/main/scala/org/apache/mahout/flinkbindings/FlinkDistributedContext.scala b/community/community-engines/flink-batch/src/main/scala/org/apache/mahout/flinkbindings/FlinkDistributedContext.scala
deleted file mode 100644
index 7a61ee6..0000000
--- a/community/community-engines/flink-batch/src/main/scala/org/apache/mahout/flinkbindings/FlinkDistributedContext.scala
+++ /dev/null
@@ -1,50 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.mahout.flinkbindings
-
-import org.apache.flink.api.scala.ExecutionEnvironment
-import org.apache.flink.configuration.GlobalConfiguration
-import org.apache.mahout.math.drm.DistributedContext
-import org.apache.mahout.math.drm.DistributedEngine
-
-class FlinkDistributedContext(val env: ExecutionEnvironment) extends DistributedContext {
-
-  val mahoutHome = getMahoutHome()
-
-  GlobalConfiguration.loadConfiguration(mahoutHome + "/src/conf/flink-config.yaml")
-
-  val conf = GlobalConfiguration.getConfiguration
-
-  var degreeOfParallelism: Int = 0
-
-  if (conf != null) {
-    degreeOfParallelism = conf.getInteger("parallelism.default", Runtime.getRuntime.availableProcessors)
-  } else {
-    degreeOfParallelism = Runtime.getRuntime.availableProcessors
-  }
-
-  env.setParallelism(degreeOfParallelism)
-  
-  val engine: DistributedEngine = FlinkEngine
-
-  override def close() {
-    // TODO
-  }
-
-}
diff --git a/community/community-engines/flink-batch/src/main/scala/org/apache/mahout/flinkbindings/FlinkEngine.scala b/community/community-engines/flink-batch/src/main/scala/org/apache/mahout/flinkbindings/FlinkEngine.scala
deleted file mode 100644
index f1d23b2..0000000
--- a/community/community-engines/flink-batch/src/main/scala/org/apache/mahout/flinkbindings/FlinkEngine.scala
+++ /dev/null
@@ -1,416 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.mahout.flinkbindings
-
-import org.apache.flink.api.common.functions.MapFunction
-import org.apache.flink.api.common.typeinfo.TypeInformation
-import org.apache.flink.api.java.typeutils.TypeExtractor
-import org.apache.flink.api.scala._
-import org.apache.flink.api.scala.utils.DataSetUtils
-import org.apache.hadoop.io.{IntWritable, LongWritable, Text}
-import org.apache.mahout.flinkbindings.blas._
-import org.apache.mahout.flinkbindings.drm._
-import org.apache.mahout.flinkbindings.io.{HDFSUtil, Hadoop2HDFSUtil}
-import org.apache.mahout.math._
-import org.apache.mahout.math.drm._
-import org.apache.mahout.math.drm.logical._
-import org.apache.mahout.math.indexeddataset.{BiDictionary, IndexedDataset, Schema}
-import org.apache.mahout.math.scalabindings.RLikeOps._
-import org.apache.mahout.math.scalabindings._
-
-import scala.collection.JavaConversions._
-import scala.reflect._
-
-object FlinkEngine extends DistributedEngine {
-
-  // By default, use Hadoop 2 utils
-  var hdfsUtils: HDFSUtil = Hadoop2HDFSUtil
-
-  /**
-    * Load DRM from hdfs (as in Mahout DRM format).
-    *
-    * @param path   The DFS path to load from
-    * @param parMin Minimum parallelism after load (equivalent to #par(min=...)).
-    */
-  override def drmDfsRead(path: String, parMin: Int = 1)
-                         (implicit dc: DistributedContext): CheckpointedDrm[_] = {
-
-    // Require that context is actually Flink context.
-    require(dc.isInstanceOf[FlinkDistributedContext], "Supplied context must be for the Flink backend.")
-
-    // Extract the Flink Environment variable
-    implicit val env = dc.asInstanceOf[FlinkDistributedContext].env
-
-    // set the parallelism of the env to parMin
-    env.setParallelism(parMin)
-
-    // get the header of a SequenceFile in the path
-    val metadata = hdfsUtils.readDrmHeader(path + "//")
-
-    val keyClass: Class[_] = metadata.keyTypeWritable
-
-    // from the header determine which function to use to unwrap the key
-    val unwrapKey = metadata.unwrapKeyFunction
-
-    // Map to the correct DrmLike based on the metadata information
-    if (metadata.keyClassTag == ClassTag.Int) {
-      val ds = env.readSequenceFile(classOf[IntWritable], classOf[VectorWritable], path)
-
-      val res = ds.map(new MapFunction[(IntWritable, VectorWritable), (Int, Vector)] {
-        def map(tuple: (IntWritable, VectorWritable)): (Int, Vector) = {
-          (unwrapKey(tuple._1).asInstanceOf[Int], tuple._2.get())
-        }
-      })
-      datasetWrap(res)(metadata.keyClassTag.asInstanceOf[ClassTag[Int]])
-    } else if (metadata.keyClassTag == ClassTag.Long) {
-      val ds = env.readSequenceFile(classOf[LongWritable], classOf[VectorWritable], path)
-
-      val res = ds.map(new MapFunction[(LongWritable, VectorWritable), (Long, Vector)] {
-        def map(tuple: (LongWritable, VectorWritable)): (Long, Vector) = {
-          (unwrapKey(tuple._1).asInstanceOf[Long], tuple._2.get())
-        }
-      })
-      datasetWrap(res)(metadata.keyClassTag.asInstanceOf[ClassTag[Long]])
-    } else if (metadata.keyClassTag == ClassTag(classOf[String])) {
-      val ds = env.readSequenceFile(classOf[Text], classOf[VectorWritable], path)
-
-      val res = ds.map(new MapFunction[(Text, VectorWritable), (String, Vector)] {
-        def map(tuple: (Text, VectorWritable)): (String, Vector) = {
-          (unwrapKey(tuple._1).asInstanceOf[String], tuple._2.get())
-        }
-      })
-      datasetWrap(res)(metadata.keyClassTag.asInstanceOf[ClassTag[String]])
-    } else throw new IllegalArgumentException(s"Unsupported DRM key type:${keyClass.getName}")
-
-  }
-
-  override def indexedDatasetDFSRead(src: String, schema: Schema, existingRowIDs: Option[BiDictionary])
-                                    (implicit sc: DistributedContext): IndexedDataset = ???
-
-  override def indexedDatasetDFSReadElements(src: String, schema: Schema, existingRowIDs: Option[BiDictionary])
-                                            (implicit sc: DistributedContext): IndexedDataset = ???
-
-
-  /**
-    * Perform default expression rewrite. Return physical plan that we can pass to exec(). <P>
-    *
-    * A particular physical engine implementation may choose to either use or not use these rewrites
-    * as a useful basic rewriting rule.<P>
-    */
-  override def optimizerRewrite[K: ClassTag](action: DrmLike[K]): DrmLike[K] = super.optimizerRewrite(action)
-
-  /**
-    * Translates logical plan into Flink execution plan.
-    **/
-  override def toPhysical[K: ClassTag](plan: DrmLike[K], ch: CacheHint.CacheHint): CheckpointedDrm[K] = {
-    // Flink-specific Physical Plan translation.
-
-    implicit val typeInformation = generateTypeInformation[K]
-    val drm = flinkTranslate(plan)
-    val newcp = new CheckpointedFlinkDrm(ds = drm.asRowWise.ds, _nrow = plan.nrow, _ncol = plan.ncol)
-    newcp.cache()
-  }
-
-
-  private def flinkTranslate[K](oper: DrmLike[K]): FlinkDrm[K] = {
-    implicit val kTag = oper.keyClassTag
-    implicit val typeInformation = generateTypeInformation[K]
-    oper match {
-      case OpAtAnyKey(_) ⇒
-        throw new IllegalArgumentException("\"A\" must be Int-keyed in this A.t expression.")
-      case op@OpAx(a, x) ⇒
-        FlinkOpAx.blockifiedBroadcastAx(op, flinkTranslate(a))
-      case op@OpAt(a) if op.keyClassTag == ClassTag.Int ⇒ FlinkOpAt.sparseTrick(op, flinkTranslate(a)).asInstanceOf[FlinkDrm[K]]
-      case op@OpAtx(a, x) if op.keyClassTag == ClassTag.Int ⇒
-        FlinkOpAx.atx_with_broadcast(op, flinkTranslate(a)).asInstanceOf[FlinkDrm[K]]
-      case op@OpAtB(a, b) ⇒ FlinkOpAtB.notZippable(op, flinkTranslate(a),
-        flinkTranslate(b)).asInstanceOf[FlinkDrm[K]]
-      case op@OpABt(a, b) ⇒
-        // express ABt via AtB: let C=At and D=Bt, and calculate CtD
-        // TODO: create specific implementation of ABt, see MAHOUT-1750
-        val opAt = OpAt(a.asInstanceOf[DrmLike[Int]]) // TODO: casts!
-        val at = FlinkOpAt.sparseTrick(opAt, flinkTranslate(a.asInstanceOf[DrmLike[Int]]))
-        val c = new CheckpointedFlinkDrm(at.asRowWise.ds, _nrow = opAt.nrow, _ncol = opAt.ncol)
-        val opBt = OpAt(b.asInstanceOf[DrmLike[Int]]) // TODO: casts!
-        val bt = FlinkOpAt.sparseTrick(opBt, flinkTranslate(b.asInstanceOf[DrmLike[Int]]))
-        val d = new CheckpointedFlinkDrm(bt.asRowWise.ds, _nrow = opBt.nrow, _ncol = opBt.ncol)
-        FlinkOpAtB.notZippable(OpAtB(c, d), flinkTranslate(c), flinkTranslate(d)).asInstanceOf[FlinkDrm[K]]
-      case op@OpAtA(a) if op.keyClassTag == ClassTag.Int ⇒ FlinkOpAtA.at_a(op, flinkTranslate(a)).asInstanceOf[FlinkDrm[K]]
-      case op@OpTimesRightMatrix(a, b) ⇒
-        FlinkOpTimesRightMatrix.drmTimesInCore(op, flinkTranslate(a), b)
-      case op@OpAewUnaryFunc(a, _, _) ⇒
-        FlinkOpAewScalar.opUnaryFunction(op, flinkTranslate(a))
-      case op@OpAewUnaryFuncFusion(a, _) ⇒
-        FlinkOpAewScalar.opUnaryFunction(op, flinkTranslate(a))
-      // deprecated
-      case op@OpAewScalar(a, scalar, _) ⇒
-        FlinkOpAewScalar.opScalarNoSideEffect(op, flinkTranslate(a), scalar)
-      case op@OpAewB(a, b, _) ⇒
-        FlinkOpAewB.rowWiseJoinNoSideEffect(op, flinkTranslate(a), flinkTranslate(b))
-      case op@OpCbind(a, b) ⇒
-        FlinkOpCBind.cbind(op, flinkTranslate(a), flinkTranslate(b))
-      case op@OpRbind(a, b) ⇒
-        FlinkOpRBind.rbind(op, flinkTranslate(a), flinkTranslate(b))
-      case op@OpCbindScalar(a, x, _) ⇒
-        FlinkOpCBind.cbindScalar(op, flinkTranslate(a), x)
-      case op@OpRowRange(a, _) ⇒
-        FlinkOpRowRange.slice(op, flinkTranslate(a)).asInstanceOf[FlinkDrm[K]]
-      case op@OpABAnyKey(a, b) if a.keyClassTag != b.keyClassTag ⇒
-        throw new IllegalArgumentException("DRMs A and B have different indices, cannot multiply them")
-      case op: OpMapBlock[_, K] ⇒
-        FlinkOpMapBlock.apply(flinkTranslate(op.A), op.ncol, op)
-      case cp: CheckpointedDrm[K] ⇒ cp
-      case _ ⇒
-        throw new NotImplementedError(s"operator $oper is not implemented yet")
-    }
-  }
-
-  /**
-    * returns a vector that contains a column-wise sum from DRM
-    */
-  override def colSums[K](drm: CheckpointedDrm[K]): Vector = {
-    implicit val kTag: ClassTag[K] = drm.keyClassTag
-    implicit val typeInformation = generateTypeInformation[K]
-
-
-    val sum = drm.ds.map {
-      tuple => tuple._2
-    }.reduce(_ + _)
-
-    val list = sum.collect
-    list.head
-  }
-
-  /** Engine-specific numNonZeroElementsPerColumn implementation based on a checkpoint. */
-  override def numNonZeroElementsPerColumn[K](drm: CheckpointedDrm[K]): Vector = {
-    implicit val kTag: ClassTag[K] = drm.keyClassTag
-    implicit val typeInformation = generateTypeInformation[K]
-
-
-    val result = drm.asBlockified.ds.map {
-      tuple =>
-        val block = tuple._2
-        val acc = block(0, ::).like()
-
-        block.foreach { v =>
-          v.nonZeroes().foreach { el => acc(el.index()) = acc(el.index()) + 1 }
-        }
-
-        acc
-    }.reduce(_ + _)
-
-    val list = result.collect
-    list.head
-  }
-
-  /**
-    * returns a vector that contains a column-wise mean from DRM
-    */
-  override def colMeans[K](drm: CheckpointedDrm[K]): Vector = {
-    drm.colSums() / drm.nrow
-  }
-
-  /**
-    * Calculates the element-wise squared norm of a matrix
-    */
-  override def norm[K](drm: CheckpointedDrm[K]): Double = {
-    implicit val kTag: ClassTag[K] = drm.keyClassTag
-    implicit val typeInformation = generateTypeInformation[K]
-
-    val sumOfSquares = drm.ds.map {
-      tuple => tuple match {
-        case (idx, vec) => vec dot vec
-      }
-    }.reduce(_ + _)
-
-    val list = sumOfSquares.collect
-
-    // check on this --why is it returning a list?
-    math.sqrt(list.head)
-  }
-
-  /** Broadcast support */
-  override def drmBroadcast(v: Vector)(implicit dc: DistributedContext): BCast[Vector] =
-    FlinkByteBCast.wrap(v)
-
-  /** Broadcast support */
-  override def drmBroadcast(m: Matrix)(implicit dc: DistributedContext): BCast[Matrix] =
-    FlinkByteBCast.wrap(m)
-
-  /** Parallelize in-core matrix as flink distributed matrix, using row ordinal indices as data set keys. */
-  // The 'numPartitions' parameter is not honored in this call,
-  // as Flink sets a global parallelism in ExecutionEnvironment
-  override def drmParallelizeWithRowIndices(m: Matrix, numPartitions: Int = 1)
-                                           (implicit dc: DistributedContext): CheckpointedDrm[Int] = {
-
-    val parallelDrm = parallelize(m, numPartitions)
-
-    new CheckpointedFlinkDrm(ds = parallelDrm, _nrow = m.numRows(), _ncol = m.numCols())
-  }
-
-  // The 'parallelismDegree' parameter is not honored in this call,
-  // as Flink sets a global parallelism in ExecutionEnvironment
-  private[flinkbindings] def parallelize(m: Matrix, parallelismDegree: Int)
-                                        (implicit dc: DistributedContext): DrmDataSet[Int] = {
-    val rows = (0 until m.nrow).map(i => (i, m(i, ::)))
-    val dataSetType = TypeExtractor.getForObject(rows.head)
-    dc.env.fromCollection(rows).partitionByRange(0)
-  }
-
-  /** Parallelize in-core matrix as flink distributed matrix, using row labels as a data set keys. */
-  // The 'numPartitions' parameter is not honored in this call,
-  // as Flink sets a global parallelism in ExecutionEnvironment
-  override def drmParallelizeWithRowLabels(m: Matrix, numPartitions: Int = 1)
-                                          (implicit dc: DistributedContext): CheckpointedDrm[String] = {
-
-    val rb = m.getRowLabelBindings
-    val p = for (i: String ← rb.keySet().toIndexedSeq) yield i → m(rb(i), ::)
-
-    new CheckpointedFlinkDrm[String](dc.env.fromCollection(p),
-      _nrow = m.nrow, _ncol = m.ncol, cacheHint = CacheHint.NONE)
-  }
-
-  /** This creates an empty DRM with specified number of partitions and cardinality. */
-  override def drmParallelizeEmpty(nrow: Int, ncol: Int, numPartitions: Int = 10)
-                                  (implicit dc: DistributedContext): CheckpointedDrm[Int] = {
-    val nonParallelResult = (0 to numPartitions).flatMap { part ⇒
-      val partNRow = (nrow - 1) / numPartitions + 1
-      val partStart = partNRow * part
-      val partEnd = Math.min(partStart + partNRow, nrow)
-
-      for (i <- partStart until partEnd) yield (i, new RandomAccessSparseVector(ncol): Vector)
-    }
-    val result = dc.env.fromCollection(nonParallelResult)
-    new CheckpointedFlinkDrm[Int](ds = result, _nrow = nrow, _ncol = ncol)
-  }
-
-  /** Creates empty DRM with non-trivial height */
-  override def drmParallelizeEmptyLong(nrow: Long, ncol: Int, numPartitions: Int = 10)
-                                      (implicit dc: DistributedContext): CheckpointedDrm[Long] = {
-
-    val nonParallelResult = (0 to numPartitions).flatMap { part ⇒
-        val partNRow = (nrow - 1) / numPartitions + 1
-        val partStart = partNRow * part
-        val partEnd = Math.min(partStart + partNRow, nrow)
-
-      for (i ← partStart until partEnd) yield (i, new RandomAccessSparseVector(ncol): Vector)
-    }
-
-    val result = dc.env.fromCollection(nonParallelResult)
-    new CheckpointedFlinkDrm[Long](ds = result, _nrow = nrow, _ncol = ncol, cacheHint = CacheHint.NONE)
-  }
-
-  /**
-   * Convert non-int-keyed matrix to an int-keyed, computing optionally mapping from old keys
-   * to row indices in the new one. The mapping, if requested, is returned as a 1-column matrix.
-   */
-  def drm2IntKeyed[K](drmX: DrmLike[K], computeMap: Boolean = false): (DrmLike[Int], Option[DrmLike[K]]) = {
-    implicit val ktag = drmX.keyClassTag
-    implicit val kTypeInformation = generateTypeInformation[K]
-
-    if (ktag == ClassTag.Int) {
-      drmX.asInstanceOf[DrmLike[Int]] → None
-    } else {
-      val drmXcp = drmX.checkpoint(CacheHint.MEMORY_ONLY)
-      val ncol = drmXcp.asInstanceOf[CheckpointedFlinkDrm[K]].ncol
-      val nrow = drmXcp.asInstanceOf[CheckpointedFlinkDrm[K]].nrow
-
-      // Compute sequential int key numbering.
-      val (intDataset, keyMap) = blas.rekeySeqInts(drmDataSet = drmXcp, computeMap = computeMap)
-
-      // Convert computed key mapping to a matrix.
-      val mxKeyMap = keyMap.map { dataSet ⇒
-        datasetWrap(dataSet.map {
-          tuple: (K, Int) => {
-            val ordinal = tuple._2
-            val key = tuple._1
-            key -> (dvec(ordinal): Vector)
-          }
-        })
-      }
-
-      intDataset -> mxKeyMap
-    }
-  }
-
-  /**
-   * (Optional) Sampling operation.
-   */
-  def drmSampleRows[K](drmX: DrmLike[K], fraction: Double, replacement: Boolean = false): DrmLike[K] = {
-    implicit val kTag: ClassTag[K] =  drmX.keyClassTag
-    implicit val typeInformation = generateTypeInformation[K]
-
-    val sample = DataSetUtils(drmX.dataset).sample(replacement, fraction)
-
-    val res = if (kTag != ClassTag.Int) {
-      new CheckpointedFlinkDrm[K](sample)
-    }
-    else {
-      blas.rekeySeqInts(new RowsFlinkDrm[K](sample, ncol = drmX.ncol), computeMap = false)._1
-        .asInstanceOf[DrmLike[K]]
-    }
-
-    res
-  }
-
-  def drmSampleKRows[K](drmX: DrmLike[K], numSamples:Int, replacement: Boolean = false): Matrix = {
-    implicit val kTag: ClassTag[K] =  drmX.keyClassTag
-    implicit val typeInformation = generateTypeInformation[K]
-
-    val sample = DataSetUtils(drmX.dataset).sampleWithSize(replacement, numSamples)
-    val sampleArray = sample.collect().toArray
-    val isSparse = sampleArray.exists { case (_, vec) ⇒ !vec.isDense }
-
-    val vectors = sampleArray.map(_._2)
-    val labels = sampleArray.view.zipWithIndex
-      .map { case ((key, _), idx) ⇒ key.toString → (idx: Integer) }.toMap
-
-    val mx: Matrix = if (isSparse) sparse(vectors: _*) else dense(vectors)
-    mx.setRowLabelBindings(labels)
-
-    mx
-  }
-
-  /** Engine-specific all reduce tensor operation. */
-  def allreduceBlock[K](drm: CheckpointedDrm[K], bmf: BlockMapFunc2[K], rf: BlockReduceFunc): Matrix = {
-    implicit val kTag: ClassTag[K] = drm.keyClassTag
-    implicit val typeInformation = generateTypeInformation[K]
-
-    val res = drm.asBlockified.ds.map(par => bmf(par)).reduce(rf)
-    res.collect().head
-  }
-
-  def generateTypeInformation[K: ClassTag]: TypeInformation[K] = {
-    implicit val ktag = classTag[K]
-
-    generateTypeInformationFromTag(ktag)
-  }
-
-  private def generateTypeInformationFromTag[K](tag: ClassTag[K]): TypeInformation[K] = {
-    if (tag.runtimeClass.equals(classOf[Int])) {
-      createTypeInformation[Int].asInstanceOf[TypeInformation[K]]
-    } else if (tag.runtimeClass.equals(classOf[Long])) {
-      createTypeInformation[Long].asInstanceOf[TypeInformation[K]]
-    } else if (tag.runtimeClass.equals(classOf[String])) {
-      createTypeInformation[String].asInstanceOf[TypeInformation[K]]
-    } else {
-      throw new IllegalArgumentException(s"index type $tag is not supported")
-    }
-  }
-}
\ No newline at end of file
diff --git a/community/community-engines/flink-batch/src/main/scala/org/apache/mahout/flinkbindings/blas/FlinkOpAewB.scala b/community/community-engines/flink-batch/src/main/scala/org/apache/mahout/flinkbindings/blas/FlinkOpAewB.scala
deleted file mode 100644
index cd980b5..0000000
--- a/community/community-engines/flink-batch/src/main/scala/org/apache/mahout/flinkbindings/blas/FlinkOpAewB.scala
+++ /dev/null
@@ -1,76 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.mahout.flinkbindings.blas
-
-
-import org.apache.flink.api.common.typeinfo.TypeInformation
-import org.apache.flink.api.scala._
-import org.apache.flink.util.Collector
-import org.apache.mahout.flinkbindings.drm.{FlinkDrm, RowsFlinkDrm}
-import org.apache.mahout.math.Vector
-import org.apache.mahout.math.drm.logical.OpAewB
-import org.apache.mahout.math.scalabindings.RLikeOps._
-
-/**
- * Implementation of Flink OpAewB
- */
-object FlinkOpAewB {
-
-  def rowWiseJoinNoSideEffect[K: TypeInformation](op: OpAewB[K], A: FlinkDrm[K], B: FlinkDrm[K]): FlinkDrm[K] = {
-    val function = AewBOpsCloning.strToFunction(op.op)
-
-    val rowsA = A.asRowWise.ds
-    val rowsB = B.asRowWise.ds
-    implicit val kTag = op.keyClassTag
-
-    val res: DataSet[(K, Vector)] =
-      rowsA
-        .coGroup(rowsB)
-        .where(0)
-        .equalTo(0) {
-        (left, right, out: Collector[(K, Vector)]) =>
-          (left.toIterable.headOption, right.toIterable.headOption) match {
-            case (Some((idx, a)), Some((_, b))) => out.collect((idx, function(a, b)))
-            case (None, Some(b)) => out.collect(b)
-            case (Some(a), None) => out.collect(a)
-            case (None, None) => throw new RuntimeException("At least one side of the co group " +
-              "must be non-empty.")
-          }
-      }
-
-
-    new RowsFlinkDrm(res.asInstanceOf[DataSet[(K, Vector)]], ncol=op.ncol)
-  }
-}
-
-
-object AewBOpsCloning {
-  type VectorVectorFunc = (Vector, Vector) => Vector
-
-  def strToFunction(op: String): VectorVectorFunc = op match {
-    case "+" => plus
-    case "-" => minus
-    case "*" => times
-    case "/" => div
-    case _ => throw new IllegalArgumentException(s"Unsupported elementwise operator: $op")
-  }
-
-  val plus: VectorVectorFunc = (a, b) => a + b
-  val minus: VectorVectorFunc = (a, b) => a - b
-  val times: VectorVectorFunc = (a, b) => a * b
-  val div: VectorVectorFunc = (a, b) => a / b
-}
diff --git a/community/community-engines/flink-batch/src/main/scala/org/apache/mahout/flinkbindings/blas/FlinkOpAewScalar.scala b/community/community-engines/flink-batch/src/main/scala/org/apache/mahout/flinkbindings/blas/FlinkOpAewScalar.scala
deleted file mode 100644
index 6b034b8..0000000
--- a/community/community-engines/flink-batch/src/main/scala/org/apache/mahout/flinkbindings/blas/FlinkOpAewScalar.scala
+++ /dev/null
@@ -1,106 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.mahout.flinkbindings.blas
-
-import org.apache.flink.api.common.typeinfo.TypeInformation
-import org.apache.mahout.flinkbindings.drm.{BlockifiedFlinkDrm, FlinkDrm}
-import org.apache.mahout.math.Matrix
-import org.apache.mahout.math.drm.logical.{AbstractUnaryOp, OpAewScalar, TEwFunc}
-import org.apache.mahout.math.scalabindings.RLikeOps._
-
-import scala.collection.JavaConversions._
-import scala.reflect.ClassTag
-
-import org.apache.flink.api.scala._
-
-/**
- * Implementation if Flink OpAewScalar
- */
-object FlinkOpAewScalar {
-
-  final val PROPERTY_AEWB_INPLACE = "mahout.math.AewB.inplace"
-  private def isInplace = System.getProperty(PROPERTY_AEWB_INPLACE, "false").toBoolean
-
-  @Deprecated
-  def opScalarNoSideEffect[K: TypeInformation](op: OpAewScalar[K], A: FlinkDrm[K], scalar: Double): FlinkDrm[K] = {
-    val function = EWOpsCloning.strToFunction(op.op)
-    implicit val kTag = op.keyClassTag
-
-
-    val res = A.asBlockified.ds.map{
-      tuple => (tuple._1, function(tuple._2, scalar))
-    }
-
-    new BlockifiedFlinkDrm(res, op.ncol)
-  }
-
-  def opUnaryFunction[K: TypeInformation](op: AbstractUnaryOp[K, K] with TEwFunc, A: FlinkDrm[K]): FlinkDrm[K] = {
-    val f = op.f
-    val inplace = isInplace
-
-
-    implicit val kTag = op.keyClassTag
-
-    val res = if (op.evalZeros) {
-      A.asBlockified.ds.map{
-        tuple =>
-          val (keys, block) = tuple
-          val newBlock = if (inplace) block else block.cloned
-          newBlock := ((_, _, x) => f(x))
-          (keys, newBlock)
-      }
-    } else {
-      A.asBlockified.ds.map{
-        tuple =>
-          val (keys, block) = tuple
-          val newBlock = if (inplace) block else block.cloned
-          for (row <- newBlock; el <- row.nonZeroes) el := f(el.get)
-          (keys, newBlock)
-      }
-    }
-
-    new BlockifiedFlinkDrm(res, op.ncol)
-
-  }
-
-}
-
-@Deprecated
-object EWOpsCloning {
-
-  type MatrixScalarFunc = (Matrix, Double) => Matrix
-
-  def strToFunction(op: String): MatrixScalarFunc = op match {
-    case "+" => plusScalar
-    case "-" => minusScalar
-    case "*" => timesScalar
-    case "/" => divScalar
-    case "-:" => scalarMinus
-    case "/:" => scalarDiv
-    case _ => throw new IllegalArgumentException(s"Unsupported elementwise operator: $op")
-  }
-
-  val plusScalar: MatrixScalarFunc = (A, s) => A + s
-  val minusScalar: MatrixScalarFunc = (A, s) => A - s
-  val scalarMinus: MatrixScalarFunc = (A, s) => s -: A
-  val timesScalar: MatrixScalarFunc = (A, s) => A * s
-  val divScalar: MatrixScalarFunc = (A, s) => A / s
-  val scalarDiv: MatrixScalarFunc = (A, s) => s /: A
-}
-
diff --git a/community/community-engines/flink-batch/src/main/scala/org/apache/mahout/flinkbindings/blas/FlinkOpAt.scala b/community/community-engines/flink-batch/src/main/scala/org/apache/mahout/flinkbindings/blas/FlinkOpAt.scala
deleted file mode 100644
index 5093216..0000000
--- a/community/community-engines/flink-batch/src/main/scala/org/apache/mahout/flinkbindings/blas/FlinkOpAt.scala
+++ /dev/null
@@ -1,72 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.mahout.flinkbindings.blas
-
-import org.apache.flink.api.scala._
-import org.apache.mahout.flinkbindings.drm.{FlinkDrm, RowsFlinkDrm}
-import org.apache.mahout.math.{SequentialAccessSparseVector, Vector}
-import org.apache.mahout.math.drm.logical.OpAt
-import org.apache.mahout.math.scalabindings.RLikeOps._
-
-import scala.Array.canBuildFrom
-
-/**
- * Implementation of Flink At
- */
-object FlinkOpAt {
-
-  /**
-   * The idea here is simple: compile vertical column vectors of every partition block as sparse
-   * vectors of the <code>A.nrow</code> length; then group them by their column index and sum the
-   * groups into final rows of the transposed matrix.
-   */
-  def sparseTrick(op: OpAt, A: FlinkDrm[Int]): FlinkDrm[Int] = {
-    val ncol = op.ncol // # of rows of A, i.e. # of columns of A^T
-
-    val sparseParts = A.asBlockified.ds.flatMap {
-      blockifiedTuple =>
-        val keys = blockifiedTuple._1
-        val block = blockifiedTuple._2
-
-        (0 until block.ncol).map {
-          columnIndex =>
-            val columnVector: Vector = new SequentialAccessSparseVector(ncol)
-
-            keys.zipWithIndex.foreach {
-              case (key, idx) => columnVector(key) += block(idx, columnIndex)
-            }
-
-            (columnIndex, columnVector)
-        }
-    }
-
-    val regrouped = sparseParts.groupBy(0)
-
-    val sparseTotal = regrouped.reduce{
-      (left, right) =>
-        (left._1, left._2 + right._2)
-    }
-
-    // TODO: densify or not?
-    new RowsFlinkDrm(sparseTotal, ncol)
-  }
-
-
-
-}
\ No newline at end of file
diff --git a/community/community-engines/flink-batch/src/main/scala/org/apache/mahout/flinkbindings/blas/FlinkOpAtA.scala b/community/community-engines/flink-batch/src/main/scala/org/apache/mahout/flinkbindings/blas/FlinkOpAtA.scala
deleted file mode 100644
index 10f1b92..0000000
--- a/community/community-engines/flink-batch/src/main/scala/org/apache/mahout/flinkbindings/blas/FlinkOpAtA.scala
+++ /dev/null
@@ -1,222 +0,0 @@
-/**
-  * Licensed to the Apache Software Foundation (ASF) under one
-  * or more contributor license agreements. See the NOTICE file
-  * distributed with this work for additional information
-  * regarding copyright ownership. The ASF licenses this file
-  * to you under the Apache License, Version 2.0 (the
-  * "License"); you may not use this file except in compliance
-  * with the License. You may obtain a copy of the License at
-  *
-  * http://www.apache.org/licenses/LICENSE-2.0
-  *
-  * Unless required by applicable law or agreed to in writing,
-  * software distributed under the License is distributed on an
-  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-  * KIND, either express or implied. See the License for the
-  * specific language governing permissions and limitations
-  * under the License.
-  */
-package org.apache.mahout.flinkbindings.blas
-
-import java.lang.Iterable
-
-import org.apache.flink.api.common.functions._
-import org.apache.flink.api.scala._
-import org.apache.flink.configuration.Configuration
-import org.apache.flink.shaded.com.google.common.collect.Lists
-import org.apache.flink.util.Collector
-import org.apache.mahout.flinkbindings._
-import org.apache.mahout.flinkbindings.drm._
-import org.apache.mahout.math.drm.logical.OpAtA
-import org.apache.mahout.math.drm.{BlockifiedDrmTuple, _}
-import org.apache.mahout.math.scalabindings.RLikeOps._
-import org.apache.mahout.math.scalabindings._
-import org.apache.mahout.math.{Matrix, UpperTriangular, _}
-
-import scala.collection.JavaConversions._
-import scala.collection.JavaConverters._
-import scala.collection._
-
-/**
- * Implementation of Flink A' * A
- *
- */
-object FlinkOpAtA {
-
-  final val PROPERTY_ATA_MAXINMEMNCOL = "mahout.math.AtA.maxInMemNCol"
-  final val PROPERTY_ATA_MAXINMEMNCOL_DEFAULT = "200"
-
-  def at_a[K](op: OpAtA[K], A: FlinkDrm[K]): FlinkDrm[Int] = {
-    val maxInMemStr = System.getProperty(PROPERTY_ATA_MAXINMEMNCOL, PROPERTY_ATA_MAXINMEMNCOL_DEFAULT)
-    val maxInMemNCol = maxInMemStr.toInt
-    maxInMemNCol.ensuring(_ > 0, "Invalid A'A in-memory setting for optimizer")
-
-    implicit val kTag = A.classTag
-
-    if (op.ncol <= maxInMemNCol) {
-      implicit val ctx = A.context
-      val inCoreAtA = slim(op, A)
-      val result = drmParallelize(inCoreAtA, numPartitions = 1)
-      result
-    } else {
-      fat(op.asInstanceOf[OpAtA[K]], A.asInstanceOf[FlinkDrm[K]])
-    }
-  }
-
-  def slim[K](op: OpAtA[K], A: FlinkDrm[K]): Matrix = {
-    val ds = A.asRowWise.ds
-    val ncol = op.ncol
-
-    // Compute backing vector of tiny-upper-triangular accumulator across all the data.
-    val res = ds.mapPartition(pIter => {
-
-      val ut = new UpperTriangular(ncol)
-
-      // Strategy is to add to an outer product of each row to the upper triangular accumulator.
-      pIter.foreach({ case (k, v) =>
-
-        // Use slightly various traversal strategies over dense vs. sparse source.
-        if (v.isDense) {
-
-          // Update upper-triangular pattern only (due to symmetry).
-          // Note: Scala for-comprehensions are said to be fairly inefficient this way, but this is
-          // such spectacular case they were designed for.. Yes I do observe some 20% difference
-          // compared to while loops with no other payload, but the other paylxcoad is usually much
-          // heavier than this overhead, so... I am keeping this as is for the time being.
-
-          for (row <- 0 until v.length; col <- row until v.length)
-            ut(row, col) = ut(row, col) + v(row) * v(col)
-
-        } else {
-
-          // Sparse source.
-          v.nonZeroes().view
-
-            // Outer iterator iterates over rows of outer product.
-            .foreach(elrow => {
-
-            // Inner loop for columns of outer product.
-            v.nonZeroes().view
-
-              // Filter out non-upper nonzero elements from the double loop.
-              .filter(_.index >= elrow.index)
-
-              // Incrementally update outer product value in the uppper triangular accumulator.
-              .foreach(elcol => {
-
-              val row = elrow.index
-              val col = elcol.index
-              ut(row, col) = ut(row, col) + elrow.get() * elcol.get()
-
-            })
-          })
-
-        }
-      })
-
-      Iterator(dvec(ddata = ut.getData).asInstanceOf[Vector]: Vector)
-    }).reduce(_ + _).collect()
-
-    new DenseSymmetricMatrix(res.head)
-  }
-
-  def fat[K](op: OpAtA[K], A: FlinkDrm[K]): FlinkDrm[Int] = {
-    val nrow = op.A.nrow
-    val ncol = op.A.ncol
-    val ds = A.asBlockified.ds
-
-    val numberOfPartitions: DataSet[Int] = ds.map(new MapFunction[(Array[K], Matrix), Int] {
-      def map(a: (Array[K], Matrix)): Int = 1
-    }).reduce(new ReduceFunction[Int] {
-      def reduce(a: Int, b: Int): Int = a + b
-    })
-
-    val subresults: DataSet[(Int, Matrix)] =
-          ds.flatMap(new RichFlatMapFunction[(Array[K], Matrix), (Int, Matrix)] {
-
-      var ranges: Array[Range] = _
-
-      override def open(params: Configuration): Unit = {
-        val runtime = this.getRuntimeContext
-        val dsX: java.util.List[Int] = runtime.getBroadcastVariable("numberOfPartitions")
-        val parts = dsX.get(0)
-        val numParts = estimatePartitions(nrow, ncol, parts)
-        ranges = computeEvenSplits(ncol, numParts)
-      }
-
-      def flatMap(tuple: (Array[K], Matrix), out: Collector[(Int, Matrix)]): Unit = {
-        val block = tuple._2
-
-        ranges.zipWithIndex.foreach { case (range, idx) => 
-          out.collect(idx -> block(::, range).t %*% block)
-        }
-      }
-
-    }).withBroadcastSet(numberOfPartitions, "numberOfPartitions")
-
-    val res = subresults.groupBy(0)
-                        .reduceGroup(new RichGroupReduceFunction[(Int, Matrix), BlockifiedDrmTuple[Int]] {
-
-      var ranges: Array[Range] = _
-
-      override def open(params: Configuration): Unit = {
-        val runtime = this.getRuntimeContext
-        val dsX: java.util.List[Int] = runtime.getBroadcastVariable("numberOfPartitions")
-        val parts = dsX.get(0)
-        val numParts = estimatePartitions(nrow, ncol, parts)
-        ranges = computeEvenSplits(ncol, numParts)
-      }
-
-      def reduce(values: Iterable[(Int, Matrix)], out: Collector[BlockifiedDrmTuple[Int]]): Unit = {
-        val it = Lists.newArrayList(values).asScala
-        val (blockKey, _) = it.head
-
-        val block = it.map { _._2 }.reduce { (m1, m2) => m1 + m2 }
-        val blockStart = ranges(blockKey).start
-        val rowKeys = Array.tabulate(block.nrow)(blockStart + _)
-
-        out.collect(rowKeys -> block)
-      }
-    }).withBroadcastSet(numberOfPartitions, "numberOfPartitions")
-
-    new BlockifiedFlinkDrm(res, ncol)
-  }
-
-  def estimatePartitions(nrow: Long, ncol: Int, parts:Int): Int = {
-    // per-partition element density 
-    val epp = nrow.toDouble * ncol / parts
-
-    // product partitions
-    val prodParts = nrow * ncol / epp
-
-    val nparts = math.round(prodParts).toInt max 1
-
-    // Constrain nparts to maximum of anrow to prevent guaranteed empty partitions.
-    if (nparts > nrow) { 
-      nrow.toInt 
-    } else { 
-      nparts
-    }
-  }
-
-  def computeEvenSplits(nrow: Long, numSplits: Int): Array[Range] = {
-    require(numSplits <= nrow, "Requested amount of splits greater than number of data points.")
-    require(nrow >= 1)
-    require(numSplits >= 1)
-
-    // Base split -- what is our base split size?
-    val baseSplit = safeToNonNegInt(nrow / numSplits)
-
-    // Slack -- how many splits will have to be incremented by 1 though?
-    val slack = safeToNonNegInt(nrow % numSplits)
-
-    // Compute ranges. We need to set ranges so that numSplits - slack splits have size of baseSplit;
-    // and `slack` splits have size baseSplit + 1. Here is how we do it: First, we compute the range
-    // offsets:
-    val offsets = (0 to numSplits).map(i => i * (baseSplit + 1) - (0 max i - slack))
-    // And then we connect the ranges using gaps between offsets:
-
-    val ranges = offsets.sliding(2).map { offs => offs(0) until offs(1) }
-    ranges.toArray
-  }
-}
\ No newline at end of file
diff --git a/community/community-engines/flink-batch/src/main/scala/org/apache/mahout/flinkbindings/blas/FlinkOpAtB.scala b/community/community-engines/flink-batch/src/main/scala/org/apache/mahout/flinkbindings/blas/FlinkOpAtB.scala
deleted file mode 100644
index c10c2e4..0000000
--- a/community/community-engines/flink-batch/src/main/scala/org/apache/mahout/flinkbindings/blas/FlinkOpAtB.scala
+++ /dev/null
@@ -1,88 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.mahout.flinkbindings.blas
-
-import java.lang.Iterable
-
-import com.google.common.collect.Lists
-import org.apache.flink.api.common.functions.{FlatMapFunction, GroupReduceFunction}
-import org.apache.flink.api.scala._
-import org.apache.flink.util.Collector
-import org.apache.mahout.flinkbindings._
-import org.apache.mahout.flinkbindings.drm.{BlockifiedFlinkDrm, FlinkDrm}
-import org.apache.mahout.math.{Matrix, Vector}
-import org.apache.mahout.math.drm._
-import org.apache.mahout.math.drm.logical.OpAtB
-import org.apache.mahout.math.scalabindings.RLikeOps._
-
-import scala.collection.JavaConverters.asScalaBufferConverter
-
-/**
- * Implementation of Flink A' * B
- */
-object FlinkOpAtB {
-
-  def notZippable[A](op: OpAtB[A], At: FlinkDrm[A], B: FlinkDrm[A]): FlinkDrm[Int] = {
-    val rowsAt = At.asRowWise.ds.asInstanceOf[DrmDataSet[A]]
-    val rowsB = B.asRowWise.ds.asInstanceOf[DrmDataSet[A]]
-    val joined = rowsAt.join(rowsB).where(0).equalTo(0)
-
-    val ncol = op.ncol
-    val nrow = op.nrow.toInt
-    val blockHeight = 10
-    val blockCount = safeToNonNegInt((nrow - 1) / blockHeight + 1)
-
-    val preProduct: DataSet[(Int, Matrix)] =
-             joined.flatMap(new FlatMapFunction[((A, Vector), (A, Vector)), (Int, Matrix)] {
-      def flatMap(in: ((A, Vector), (A, Vector)), out: Collector[(Int, Matrix)]): Unit = {
-        val avec = in._1._2
-        val bvec = in._2._2
-
-        0.until(blockCount) map { blockKey =>
-          val blockStart = blockKey * blockHeight
-          val blockEnd = Math.min(nrow, blockStart + blockHeight)
-
-          val outer = avec(blockStart until blockEnd) cross bvec
-          out.collect(blockKey -> outer)
-          out
-        }
-      }
-    })
-
-    val res: BlockifiedDrmDataSet[Int] = 
-      preProduct.groupBy(0).reduceGroup(
-        new GroupReduceFunction[(Int, Matrix), BlockifiedDrmTuple[Int]] {
-          def reduce(values: Iterable[(Int, Matrix)], out: Collector[BlockifiedDrmTuple[Int]]): Unit = {
-            val it = Lists.newArrayList(values).asScala
-            val (idx, _) = it.head
-
-            val block = it.map { t => t._2 }.reduce { (m1, m2) => m1 + m2 }
-
-            val blockStart = idx * blockHeight
-            val keys = Array.tabulate(block.nrow)(blockStart + _)
-
-            out.collect(keys -> block)
-          }
-        }
-      )
-
-    new BlockifiedFlinkDrm[Int](res, ncol)
-  }
-
-}
\ No newline at end of file
diff --git a/community/community-engines/flink-batch/src/main/scala/org/apache/mahout/flinkbindings/blas/FlinkOpAx.scala b/community/community-engines/flink-batch/src/main/scala/org/apache/mahout/flinkbindings/blas/FlinkOpAx.scala
deleted file mode 100644
index 18a3c4b..0000000
--- a/community/community-engines/flink-batch/src/main/scala/org/apache/mahout/flinkbindings/blas/FlinkOpAx.scala
+++ /dev/null
@@ -1,96 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.mahout.flinkbindings.blas
-
-import java.util
-
-import org.apache.flink.api.common.functions.RichMapFunction
-import org.apache.flink.api.common.typeinfo.TypeInformation
-import org.apache.flink.api.scala._
-import org.apache.flink.configuration.Configuration
-import org.apache.mahout.flinkbindings.FlinkEngine
-import org.apache.mahout.flinkbindings.drm.{BlockifiedFlinkDrm, FlinkDrm, RowsFlinkDrm}
-import org.apache.mahout.math.drm._
-import org.apache.mahout.math.drm.logical.{OpAtx, OpAx}
-import org.apache.mahout.math.scalabindings.RLikeOps._
-import org.apache.mahout.math.scalabindings._
-import org.apache.mahout.math.{Matrix, Vector}
-
-/**
- * Implementation of Flink Ax
- */
-object FlinkOpAx {
-
-  def blockifiedBroadcastAx[K: TypeInformation](op: OpAx[K], A: FlinkDrm[K]): FlinkDrm[K] = {
-    implicit val ctx = A.context
-    implicit val kTag = op.keyClassTag
-
-    val singletonDataSetX = ctx.env.fromElements(op.x)
-
-    val out = A.asBlockified.ds.map(new RichMapFunction[(Array[K], Matrix), (Array[K], Matrix)] {
-      var x: Vector = null
-
-      override def open(params: Configuration): Unit = {
-        val runtime = this.getRuntimeContext
-        val dsX: util.List[Vector] = runtime.getBroadcastVariable("vector")
-        x = dsX.get(0)
-      }
-
-      override def map(tuple: (Array[K], Matrix)): (Array[K], Matrix) = tuple match {
-        case (keys, mat) => (keys, (mat %*% x).toColMatrix)
-      }
-    }).withBroadcastSet(singletonDataSetX, "vector")
-
-    new BlockifiedFlinkDrm(out, op.nrow.toInt)
-  }
-
-
-  def atx_with_broadcast(op: OpAtx, srcA: FlinkDrm[Int]): FlinkDrm[Int] = {
-    implicit val ctx = srcA.context
-
-    val dataSetA = srcA.asBlockified.ds
-
-    // broadcast the vector x to the back end
-    val bcastX = drmBroadcast(op.x)
-
-    implicit val typeInformation = createTypeInformation[(Array[Int],Matrix)]
-    val inCoreM = dataSetA.map {
-      tuple =>
-        tuple._1.zipWithIndex.map {
-          case (key, idx) => tuple._2(idx, ::) * bcastX.value(key)
-        }
-          .reduce(_ += _)
-    }
-      // All-reduce
-      .reduce(_ += _)
-
-      // collect result
-      .collect().head
-
-      // Convert back to mtx
-      .toColMatrix
-
-    // This doesn't do anything now
-    val res = FlinkEngine.parallelize(inCoreM, parallelismDegree = 1)
-
-    new RowsFlinkDrm[Int](res, 1)
-
-  }
-
-}
\ No newline at end of file
diff --git a/community/community-engines/flink-batch/src/main/scala/org/apache/mahout/flinkbindings/blas/FlinkOpCBind.scala b/community/community-engines/flink-batch/src/main/scala/org/apache/mahout/flinkbindings/blas/FlinkOpCBind.scala
deleted file mode 100644
index 0e16fa8..0000000
--- a/community/community-engines/flink-batch/src/main/scala/org/apache/mahout/flinkbindings/blas/FlinkOpCBind.scala
+++ /dev/null
@@ -1,117 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.mahout.flinkbindings.blas
-
-import org.apache.flink.api.common.typeinfo.TypeInformation
-import org.apache.flink.api.scala._
-import org.apache.mahout.flinkbindings.drm._
-import org.apache.mahout.math._
-import org.apache.mahout.math.drm.logical.{OpCbind, OpCbindScalar}
-import org.apache.mahout.math.scalabindings.RLikeOps._
-
-import scala.collection.JavaConversions._
-
-/**
- * Implementation of Flink's cbind
- */
-object FlinkOpCBind {
-
-  def cbind[K: TypeInformation](op: OpCbind[K], A: FlinkDrm[K], B: FlinkDrm[K]): FlinkDrm[K] = {
-    val n = op.ncol
-    val n1 = op.A.ncol
-    val n2 = op.B.ncol
-
-    implicit val classTag = op.A.keyClassTag
-
-    val rowsA = A.asRowWise.ds
-    val rowsB = B.asRowWise.ds
-
-    val res: DataSet[(K, Vector)] =
-      rowsA.coGroup(rowsB).where(0).equalTo(0) {
-        (left, right) =>
-          (left.toIterable.headOption, right.toIterable.headOption) match {
-            case (Some((idx, a)), Some((_, b))) =>
-              val result = if (a.isDense && b.isDense) {
-                new DenseVector(n)
-              } else {
-                new SequentialAccessSparseVector(n)
-              }
-
-              result(0 until n1) := a
-              result(n1 until n) := b
-
-              (idx, result)
-            case (Some((idx, a)), None) =>
-              val result: Vector = if (a.isDense) {
-                new DenseVector(n)
-              } else {
-                new SequentialAccessSparseVector(n)
-              }
-              result(n1 until n) := a
-
-              (idx, result)
-            case (None, Some((idx, b))) =>
-              val result: Vector = if (b.isDense) {
-                new DenseVector(n)
-              } else {
-                new SequentialAccessSparseVector(n)
-              }
-              result(n1 until n) := b
-
-              (idx, result)
-            case (None, None) =>
-              throw new RuntimeException("CoGroup should have at least one non-empty input.")
-          }
-      }
-
-    new RowsFlinkDrm(res.asInstanceOf[DataSet[(K, Vector)]], ncol=op.ncol)
-  }
-
-  def cbindScalar[K: TypeInformation](op: OpCbindScalar[K], A: FlinkDrm[K], x: Double): FlinkDrm[K] = {
-    val left = op.leftBind
-    val ds = A.asBlockified.ds
-
-    implicit val kTag= op.keyClassTag
-
-    def cbind(mat: Matrix, x: Double, left: Boolean): Matrix = {
-      val ncol = mat.ncol
-      val newMat = mat.like(mat.nrow, ncol + 1)
-
-      if (left) {
-        newMat.zip(mat).foreach { case (newVec, origVec) =>
-          newVec(0) = x
-          newVec(1 to ncol) := origVec
-        }
-      } else {
-        newMat.zip(mat).foreach { case (newVec, origVec) =>
-          newVec(ncol) = x
-          newVec(0 until ncol) := origVec
-        }
-      }
-
-      newMat
-    }
-
-    val out = A.asBlockified.ds.map {
-      tuple => (tuple._1, cbind(tuple._2, x, left))
-    }
-
-    new BlockifiedFlinkDrm(out, op.ncol)
-  }
-}
\ No newline at end of file
diff --git a/community/community-engines/flink-batch/src/main/scala/org/apache/mahout/flinkbindings/blas/FlinkOpMapBlock.scala b/community/community-engines/flink-batch/src/main/scala/org/apache/mahout/flinkbindings/blas/FlinkOpMapBlock.scala
deleted file mode 100644
index c22fa9a..0000000
--- a/community/community-engines/flink-batch/src/main/scala/org/apache/mahout/flinkbindings/blas/FlinkOpMapBlock.scala
+++ /dev/null
@@ -1,47 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.mahout.flinkbindings.blas
-
-import org.apache.flink.api.common.typeinfo.TypeInformation
-import org.apache.flink.api.scala._
-import org.apache.mahout.flinkbindings.drm.{BlockifiedFlinkDrm, FlinkDrm}
-import org.apache.mahout.math.drm.logical.OpMapBlock
-import org.apache.mahout.math.scalabindings.RLikeOps._
-
-/**
- * Implementation of Flink's MapBlock
- */
-object FlinkOpMapBlock {
-
-  def apply[S, R: TypeInformation](src: FlinkDrm[S], ncol: Int, operator: OpMapBlock[S,R]): FlinkDrm[R] = {
-
-    implicit val rtag = operator.keyClassTag
-    val bmf = operator.bmf
-    val ncol = operator.ncol
-    val res = src.asBlockified.ds.map {
-      block =>
-        val result = bmf(block)
-        assert(result._2.nrow == block._2.nrow, "block mapping must return same number of rows.")
-        assert(result._2.ncol == ncol, s"block map must return $ncol number of columns.")
-        result
-    }
-
-    new BlockifiedFlinkDrm[R](res, ncol)
-  }
-}
\ No newline at end of file
diff --git a/community/community-engines/flink-batch/src/main/scala/org/apache/mahout/flinkbindings/blas/FlinkOpRBind.scala b/community/community-engines/flink-batch/src/main/scala/org/apache/mahout/flinkbindings/blas/FlinkOpRBind.scala
deleted file mode 100644
index 685486c..0000000
--- a/community/community-engines/flink-batch/src/main/scala/org/apache/mahout/flinkbindings/blas/FlinkOpRBind.scala
+++ /dev/null
@@ -1,41 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.mahout.flinkbindings.blas
-
-import org.apache.flink.api.common.typeinfo.TypeInformation
-
-import org.apache.flink.api.scala.DataSet
-import org.apache.mahout.flinkbindings.drm.FlinkDrm
-import org.apache.mahout.flinkbindings.drm.RowsFlinkDrm
-import org.apache.mahout.math.Vector
-import org.apache.mahout.math.drm.logical.OpRbind
-
-/**
-  * Implementation of RBind
-  */
-object FlinkOpRBind {
-
-  def rbind[K: TypeInformation](op: OpRbind[K], A: FlinkDrm[K], B: FlinkDrm[K]): FlinkDrm[K] = {
-    // note that indexes of B are already re-arranged prior to executing this code
-    implicit val kTag = op.keyClassTag
-    val res = A.asRowWise.ds.union(B.asRowWise.ds)
-    new RowsFlinkDrm(res.asInstanceOf[DataSet[(K, Vector)]], ncol = op.ncol)
-  }
-
-}
\ No newline at end of file
diff --git a/community/community-engines/flink-batch/src/main/scala/org/apache/mahout/flinkbindings/blas/FlinkOpRowRange.scala b/community/community-engines/flink-batch/src/main/scala/org/apache/mahout/flinkbindings/blas/FlinkOpRowRange.scala
deleted file mode 100644
index c002002..0000000
--- a/community/community-engines/flink-batch/src/main/scala/org/apache/mahout/flinkbindings/blas/FlinkOpRowRange.scala
+++ /dev/null
@@ -1,46 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.mahout.flinkbindings.blas
-
-import org.apache.flink.api.scala._
-import org.apache.mahout.flinkbindings.drm.FlinkDrm
-import org.apache.mahout.flinkbindings.drm.RowsFlinkDrm
-import org.apache.mahout.math.drm.logical.OpRowRange
-
-/**
- * Implementation of Flink OpRowRange
- */
-object FlinkOpRowRange {
-
-  def slice(op: OpRowRange, A: FlinkDrm[Int]): FlinkDrm[Int] = {
-    val rowRange = op.rowRange
-    val firstIdx = rowRange.head
-
-    val filtered = A.asRowWise.ds.filter {
-      tuple => rowRange.contains(tuple._1)
-    }
-
-    val res = filtered.map {
-      tuple => (tuple._1 - firstIdx, tuple._2)
-    }
-
-    new RowsFlinkDrm(res, op.ncol)
-  }
-
-}
\ No newline at end of file
diff --git a/community/community-engines/flink-batch/src/main/scala/org/apache/mahout/flinkbindings/blas/FlinkOpTimesRightMatrix.scala b/community/community-engines/flink-batch/src/main/scala/org/apache/mahout/flinkbindings/blas/FlinkOpTimesRightMatrix.scala
deleted file mode 100644
index a4c5373..0000000
--- a/community/community-engines/flink-batch/src/main/scala/org/apache/mahout/flinkbindings/blas/FlinkOpTimesRightMatrix.scala
+++ /dev/null
@@ -1,81 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.mahout.flinkbindings.blas
-
-import org.apache.flink.api.common.functions.RichMapFunction
-import org.apache.flink.api.common.typeinfo.TypeInformation
-import org.apache.flink.api.java.typeutils.TypeExtractor
-import org.apache.flink.api.scala._
-import org.apache.flink.configuration.Configuration
-import org.apache.mahout.flinkbindings.drm.{BlockifiedFlinkDrm, FlinkDrm}
-import org.apache.mahout.math.drm.logical.OpTimesRightMatrix
-import org.apache.mahout.math.scalabindings.RLikeOps._
-import org.apache.mahout.math.scalabindings._
-import org.apache.mahout.math.{DenseMatrix, Matrix}
-
-/**
- * Implementation of OpTimesRightMatrix:
- */
-object FlinkOpTimesRightMatrix {
-
-  def drmTimesInCore[K: TypeInformation](op: OpTimesRightMatrix[K], A: FlinkDrm[K], inCoreB: Matrix): FlinkDrm[K] = {
-    implicit val ctx = A.context
-    implicit val kTag = op.keyClassTag
-
-    /* HACK: broadcasting the matrix using Flink's .withBroadcastSet(singletonDataSetB) on a matrix causes a backend Kryo
-     * Issue resulting in a stackOverflow error.
-     * 
-     * Quick fix is to instead break the matrix down into a list of rows and then rebuild it on the back end
-     * 
-     * TODO: this is obviously very inefficient... need to use the correct broadcast on the matrix itself.
-     */
-    val rows = (0 until inCoreB.nrow).map(i => (i, inCoreB(i, ::)))
-    val dataSetType = TypeExtractor.getForObject(rows.head)
-    val singletonDataSetB = ctx.env.fromCollection(rows)
-
-    val res = A.asBlockified.ds.map(new RichMapFunction[(Array[K], Matrix), (Array[K], Matrix)] {
-      var inCoreB: Matrix = _
-
-      override def open(params: Configuration): Unit = {
-        val runtime = this.getRuntimeContext
-        val dsB: java.util.List[(Int, org.apache.mahout.math.Vector)] = runtime.getBroadcastVariable("matrix")
-        val m = dsB.size()
-        val n = dsB.get(0)._2.size
-        val isDense = dsB.get(0)._2.isDense
-
-        inCoreB = isDense match {
-          case true => new DenseMatrix(m, n)
-          case false => new DenseMatrix(m, n)
-        }
-        for (i <- 0 until m) {
-          inCoreB(i, ::) := dsB.get(i)._2
-        }
-
-      }
-     
-      override def map(tuple: (Array[K], Matrix)): (Array[K], Matrix) = tuple match {
-        case (keys, block_A) => (keys, block_A %*% inCoreB)
-      }
-
-    }).withBroadcastSet(singletonDataSetB, "matrix")
-
-    new BlockifiedFlinkDrm(res, op.ncol)
-  }
-
-}
\ No newline at end of file
diff --git a/community/community-engines/flink-batch/src/main/scala/org/apache/mahout/flinkbindings/blas/package.scala b/community/community-engines/flink-batch/src/main/scala/org/apache/mahout/flinkbindings/blas/package.scala
deleted file mode 100644
index 32a8cac..0000000
--- a/community/community-engines/flink-batch/src/main/scala/org/apache/mahout/flinkbindings/blas/package.scala
+++ /dev/null
@@ -1,125 +0,0 @@
-/**
-  * Licensed to the Apache Software Foundation (ASF) under one
-  * or more contributor license agreements. See the NOTICE file
-  * distributed with this work for additional information
-  * regarding copyright ownership. The ASF licenses this file
-  * to you under the Apache License, Version 2.0 (the
-  * "License"); you may not use this file except in compliance
-  * with the License. You may obtain a copy of the License at
-  *
-  * http://www.apache.org/licenses/LICENSE-2.0
-  *
-  * Unless required by applicable law or agreed to in writing,
-  * software distributed under the License is distributed on an
-  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-  * KIND, either express or implied. See the License for the
-  * specific language governing permissions and limitations
-  * under the License.
-  */
-package org.apache.mahout.flinkbindings
-
-import java.lang.Iterable
-
-import org.apache.flink.api.common.functions.RichMapPartitionFunction
-import org.apache.flink.api.common.typeinfo.TypeInformation
-import org.apache.flink.api.scala._
-import org.apache.flink.api.scala.utils._
-import org.apache.flink.configuration.Configuration
-import org.apache.flink.util.Collector
-import org.apache.mahout.flinkbindings.drm.FlinkDrm
-import org.apache.mahout.math.drm.DrmLike
-import org.apache.mahout.math.scalabindings.RLikeOps._
-import org.apache.mahout.math.{RandomAccessSparseVector, Vector}
-
-import scala.reflect.ClassTag
-
-package object blas {
-
-  /**
-    * Rekey matrix dataset keys to consecutive int keys.
-    * @param drmDataSet incoming matrix row-wise dataset
-    * @param computeMap if true, also compute mapping between old and new keys
-    * @tparam K existing key parameter
-    * @return
-    */
-  private[flinkbindings] def rekeySeqInts[K: ClassTag: TypeInformation](drmDataSet: FlinkDrm[K],
-                                                                 computeMap: Boolean = true): (DrmLike[Int],
-    Option[DataSet[(K, Int)]]) = {
-
-    implicit val dc = drmDataSet.context
-
-    val datasetA = drmDataSet.asRowWise.ds
-
-    val ncols = drmDataSet.asRowWise.ncol
-
-    // Flink environment
-    val env = datasetA.getExecutionEnvironment
-
-    // First, compute partition sizes.
-    val partSizes = DataSetUtils(datasetA).countElementsPerPartition.collect().toList
-
-    // Starting indices
-    var startInd = new Array[Int](datasetA.getParallelism)
-
-    // Save counts
-    for (pc <- partSizes) startInd(pc._1) = pc._2.toInt
-
-    // compute cumulative sum
-    val cumulativeSum = startInd.scanLeft(0)(_ + _).init
-
-    val vector: Vector = new RandomAccessSparseVector(cumulativeSum.length)
-
-    cumulativeSum.indices.foreach { i => vector(i) = cumulativeSum(i).toDouble }
-
-    val bCast = FlinkEngine.drmBroadcast(vector)
-
-    implicit val typeInformation = createTypeInformation[(K, Int)]
-
-    // Compute key -> int index map:
-    val keyMap = if (computeMap) {
-      Some(
-        datasetA.mapPartition(new RichMapPartitionFunction[(K, Vector), (K, Int)] {
-
-          // partition number
-          var part: Int = 0
-
-          // get the index of the partition
-          override def open(params: Configuration): Unit = {
-            part = getRuntimeContext.getIndexOfThisSubtask
-          }
-
-          override def mapPartition(iterable: Iterable[(K, Vector)], collector: Collector[(K, Int)]): Unit = {
-            val k = iterable.iterator().next._1
-            val si = bCast.value.get(part)
-            collector.collect(k -> (part + si).toInt)
-          }
-        }))
-    } else {
-      None
-    }
-
-    // Finally, do the transform
-    val intDataSet = datasetA
-
-      // Re-number each partition
-      .mapPartition(new RichMapPartitionFunction[(K, Vector), (Int, Vector)] {
-
-        // partition number
-        var part: Int = 0
-
-        // get the index of the partition
-        override def open(params: Configuration): Unit = {
-          part = getRuntimeContext.getIndexOfThisSubtask
-        }
-
-        override def mapPartition(iterable: Iterable[(K, Vector)], collector: Collector[(Int, Vector)]): Unit = {
-          val k = iterable.iterator().next._2
-          val si = bCast.value.get(part)
-          collector.collect((part + si).toInt -> k)
-        }
-      })
-
-    // Finally, return drm -> keymap result
-    datasetWrap(intDataSet) -> keyMap
-  }
-}
\ No newline at end of file
diff --git a/community/community-engines/flink-batch/src/main/scala/org/apache/mahout/flinkbindings/drm/CheckpointedFlinkDrm.scala b/community/community-engines/flink-batch/src/main/scala/org/apache/mahout/flinkbindings/drm/CheckpointedFlinkDrm.scala
deleted file mode 100644
index 1cba326..0000000
--- a/community/community-engines/flink-batch/src/main/scala/org/apache/mahout/flinkbindings/drm/CheckpointedFlinkDrm.scala
+++ /dev/null
@@ -1,302 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.mahout.flinkbindings.drm
-
-import org.apache.flink.api.common.functions.{MapFunction, ReduceFunction}
-import org.apache.flink.api.common.typeinfo.TypeInformation
-import org.apache.flink.api.java.io.{TypeSerializerInputFormat, TypeSerializerOutputFormat}
-import org.apache.flink.api.scala._
-import org.apache.flink.core.fs.FileSystem.WriteMode
-import org.apache.flink.core.fs.Path
-import org.apache.flink.api.scala.hadoop.mapred.HadoopOutputFormat
-import org.apache.flink.configuration.GlobalConfiguration
-import org.apache.hadoop.io.{IntWritable, LongWritable, Text, Writable}
-import org.apache.hadoop.mapred.{FileOutputFormat, JobConf, SequenceFileOutputFormat}
-import org.apache.mahout.flinkbindings.io.Hadoop2HDFSUtil
-import org.apache.mahout.flinkbindings.{DrmDataSet, _}
-import org.apache.mahout.math._
-import org.apache.mahout.math.drm.CacheHint._
-import org.apache.mahout.math.drm.{CacheHint, CheckpointedDrm, DistributedContext, DrmTuple, _}
-import org.apache.mahout.math.scalabindings.RLikeOps._
-import org.apache.mahout.math.scalabindings._
-
-import scala.collection.JavaConverters._
-import scala.reflect.{ClassTag, classTag}
-import scala.util.Random
-
-class CheckpointedFlinkDrm[K: ClassTag:TypeInformation](val ds: DrmDataSet[K],
-      private var _nrow: Long = CheckpointedFlinkDrm.UNKNOWN,
-      private var _ncol: Int = CheckpointedFlinkDrm.UNKNOWN,
-      override val cacheHint: CacheHint = CacheHint.NONE,
-      override protected[mahout] val partitioningTag: Long = Random.nextLong(),
-      private var _canHaveMissingRows: Boolean = false
-  ) extends CheckpointedDrm[K] {
-
-  lazy val nrow: Long = if (_nrow >= 0) _nrow else dim._1
-  lazy val ncol: Int = if (_ncol >= 0) _ncol else dim._2
-
-  // persistance values
-  var cacheFileName: String = "undefinedCacheName"
-  var isCached: Boolean = false
-  var parallelismDeg: Int = -1
-  var persistanceRootDir: String = _
-
-  // need to make sure that this is actually getting the correct properties for {{taskmanager.tmp.dirs}}
-  val mahoutHome = getMahoutHome()
-
-  // this is extra I/O for each cache call.  this needs to be moved somewhere where it is called
-  // only once.  Possibly FlinkDistributedEngine.
-  GlobalConfiguration.loadConfiguration(mahoutHome + "/conf/flink-config.yaml")
-
-  val conf = GlobalConfiguration.getConfiguration
-
-  if (!(conf == null )) {
-     persistanceRootDir = conf.getString("taskmanager.tmp.dirs", "/tmp")
-  } else {
-     persistanceRootDir = "/tmp"
-  }
-
-
-  private lazy val dim: (Long, Int) = {
-    // combine computation of ncol and nrow in one pass
-
-    val res = ds.map(new MapFunction[DrmTuple[K], (Long, Int)] {
-      def map(value: DrmTuple[K]): (Long, Int) = {
-        (1L, value._2.length)
-      }
-    }).reduce(new ReduceFunction[(Long, Int)] {
-      def reduce(t1: (Long, Int), t2: (Long, Int)) = {
-        val ((rowCnt1, colNum1), (rowCnt2, colNum2)) = (t1, t2)
-        (rowCnt1 + rowCnt2, Math.max(colNum1, colNum2))
-      }
-    })
-
-    val list = res.collect()
-    list.head
-  }
-
-
-  override val keyClassTag: ClassTag[K] = classTag[K]
-
-  /** Note as of Flink 1.0.0, no direct flink caching exists so we save
-    * the dataset to the filesystem and read it back when cache is called */
-  def cache() = {
-    if (!isCached) {
-      cacheFileName = persistanceRootDir + "/" + System.nanoTime().toString
-      parallelismDeg = ds.getParallelism
-      isCached = true
-      persist(ds, cacheFileName)
-    }
-    val _ds = readPersistedDataSet(cacheFileName, ds)
-
-    /** Leave the parallelism degree to be set the operators
-      * TODO: find out a way to set the parallelism degree based on the
-      * final drm after computation is actually triggered
-      *
-      *  // We may want to look more closely at this:
-      *  // since we've cached a drm, triggering a computation
-      *  // it may not make sense to keep the same parallelism degree
-      *  if (!(parallelismDeg == _ds.getParallelism)) {
-      *    _ds.setParallelism(parallelismDeg).rebalance()
-      *  }
-      *
-      */
-
-    datasetWrap(_ds)
-  }
-
-  def uncache(): this.type = {
-    if (isCached) {
-      Hadoop2HDFSUtil.delete(cacheFileName)
-      isCached = false
-    }
-    this
-  }
-
-  /** Writes a [[DataSet]] to the specified path and returns it as a DataSource for subsequent
-    * operations.
-    *
-    * @param dataset [[DataSet]] to write to disk
-    * @param path File path to write dataset to
-    * @tparam T Type of the [[DataSet]] elements
-    */
-  def persist[T: ClassTag: TypeInformation](dataset: DataSet[T], path: String): Unit = {
-    val env = dataset.getExecutionEnvironment
-    val outputFormat = new TypeSerializerOutputFormat[T]
-    val filePath = new Path(path)
-
-    outputFormat.setOutputFilePath(filePath)
-    outputFormat.setWriteMode(WriteMode.OVERWRITE)
-
-    dataset.output(outputFormat)
-    env.execute("FlinkTools persist")
-  }
-
-  /** Read a [[DataSet]] from specified path and returns it as a DataSource for subsequent
-    * operations.
-    *
-    * @param path File path to read dataset from
-    * @param ds persisted ds to retrieve type information and environment forom
-    * @tparam T key Type of the [[DataSet]] elements
-    * @return [[DataSet]] the persisted dataset
-    */
-  def readPersistedDataSet[T: ClassTag : TypeInformation]
-       (path: String, ds: DataSet[T]): DataSet[T] = {
-
-    val env = ds.getExecutionEnvironment
-    val inputFormat = new TypeSerializerInputFormat[T](ds.getType())
-    val filePath = new Path(path)
-    inputFormat.setFilePath(filePath)
-
-    env.createInput(inputFormat)
-  }
-
-
-  // Members declared in org.apache.mahout.math.drm.DrmLike
-
-  protected[mahout] def canHaveMissingRows: Boolean = _canHaveMissingRows
-
-  def checkpoint(cacheHint: CacheHint.CacheHint): CheckpointedDrm[K] = {
-    this
-  }
-
-  def collect: Matrix = {
-    val data = ds.collect()
-    val isDense = data.forall(_._2.isDense)
-
-    val cols = ncol
-    val rows = safeToNonNegInt(nrow)
-
-    val m = if (isDense) {
-      new DenseMatrix(rows, cols)
-    } else {
-      new SparseMatrix(rows, cols)
-    }
-
-    val intRowIndices = keyClassTag == implicitly[ClassTag[Int]]
-
-    if (intRowIndices) {
-      data.foreach { case (t, vec) =>
-        val idx = t.asInstanceOf[Int]
-        m(idx, ::) := vec
-      }
-
-      println(m.ncol, m.nrow)
-    } else {
-      // assign all rows sequentially
-      val d = data.zipWithIndex
-      d.foreach {
-        case ((_, vec), idx) => m(idx, ::) := vec
-      }
-
-      val rowBindings = d.map {
-        case ((t, _), idx) => (t.toString, idx: java.lang.Integer) 
-      }.toMap.asJava
-
-      m.setRowLabelBindings(rowBindings)
-    }
-
-    m
-  }
-
-  def dfsWrite(path: String): Unit = {
-    val env = ds.getExecutionEnvironment
-
-    val keyTag = implicitly[ClassTag[K]]
-
-    val job = new JobConf
-    FileOutputFormat.setOutputPath(job, new org.apache.hadoop.fs.Path(path))
-
-    // explicitly define all Writable Subclasses for ds.map() keys
-    // as well as the SequenceFileOutputFormat paramaters
-    if (keyTag.runtimeClass == classOf[Int]) {
-      // explicitly map into Int keys
-      implicit val typeInformation = createTypeInformation[(IntWritable,VectorWritable)]
-      val writableDataset = ds.map(new MapFunction[DrmTuple[K], (IntWritable, VectorWritable)] {
-        def map(tuple: DrmTuple[K]): (IntWritable, VectorWritable) =
-          (new IntWritable(tuple._1.asInstanceOf[Int]), new VectorWritable(tuple._2))
-      })
-
-      // setup sink for IntWritable
-      job.setOutputKeyClass(classOf[IntWritable])
-      job.setOutputValueClass(classOf[VectorWritable])
-      val sequenceFormat = new SequenceFileOutputFormat[IntWritable, VectorWritable]
-      val hadoopOutput  = new HadoopOutputFormat(sequenceFormat, job)
-      writableDataset.output(hadoopOutput)
-
-     } else if (keyTag.runtimeClass == classOf[String]) {
-      // explicitly map into Text keys
-      val writableDataset = ds.map(new MapFunction[DrmTuple[K], (Text, VectorWritable)] {
-        def map(tuple: DrmTuple[K]): (Text, VectorWritable) =
-          (new Text(tuple._1.asInstanceOf[String]), new VectorWritable(tuple._2))
-      })
-
-      // setup sink for Text
-      job.setOutputKeyClass(classOf[Text])
-      job.setOutputValueClass(classOf[VectorWritable])
-      val sequenceFormat = new SequenceFileOutputFormat[Text, VectorWritable]
-      val hadoopOutput  = new HadoopOutputFormat(sequenceFormat, job)
-      writableDataset.output(hadoopOutput)
-
-    } else if (keyTag.runtimeClass == classOf[Long]) {
-      // explicitly map into Long keys
-      val writableDataset = ds.map(new MapFunction[DrmTuple[K], (LongWritable, VectorWritable)] {
-        def map(tuple: DrmTuple[K]): (LongWritable, VectorWritable) =
-          (new LongWritable(tuple._1.asInstanceOf[Long]), new VectorWritable(tuple._2))
-      })
-
-      // setup sink for LongWritable
-      job.setOutputKeyClass(classOf[LongWritable])
-      job.setOutputValueClass(classOf[VectorWritable])
-      val sequenceFormat = new SequenceFileOutputFormat[LongWritable, VectorWritable]
-      val hadoopOutput  = new HadoopOutputFormat(sequenceFormat, job)
-      writableDataset.output(hadoopOutput)
-
-    } else throw new IllegalArgumentException("Do not know how to convert class tag %s to Writable.".format(keyTag))
-
-    env.execute(s"dfsWrite($path)")
-  }
-
-  private def keyToWritableFunc[K: ClassTag](keyTag: ClassTag[K]): (K) => Writable = {
-    if (keyTag.runtimeClass == classOf[Int]) { 
-      (x: K) => new IntWritable(x.asInstanceOf[Int])
-    } else if (keyTag.runtimeClass == classOf[String]) {
-      (x: K) => new Text(x.asInstanceOf[String]) 
-    } else if (keyTag.runtimeClass == classOf[Long]) {
-      (x: K) => new LongWritable(x.asInstanceOf[Long])
-    } else {
-      throw new IllegalArgumentException("Do not know how to convert class tag %s to Writable.".format(keyTag))
-    }
-  }
-
-  def newRowCardinality(n: Int): CheckpointedDrm[K] = {
-    assert(n > -1)
-    assert(n >= nrow)
-    new CheckpointedFlinkDrm(ds = ds, _nrow = n, _ncol = _ncol, cacheHint = cacheHint,
-      partitioningTag = partitioningTag, _canHaveMissingRows = _canHaveMissingRows)
-  }
-
-  override val context: DistributedContext = ds.getExecutionEnvironment
-
-}
-
-object CheckpointedFlinkDrm {
-  val UNKNOWN = -1
-
-}
\ No newline at end of file
diff --git a/community/community-engines/flink-batch/src/main/scala/org/apache/mahout/flinkbindings/drm/CheckpointedFlinkDrmOps.scala b/community/community-engines/flink-batch/src/main/scala/org/apache/mahout/flinkbindings/drm/CheckpointedFlinkDrmOps.scala
deleted file mode 100644
index e65c43d..0000000
--- a/community/community-engines/flink-batch/src/main/scala/org/apache/mahout/flinkbindings/drm/CheckpointedFlinkDrmOps.scala
+++ /dev/null
@@ -1,34 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.mahout.flinkbindings.drm
-
-import org.apache.mahout.math.drm.CheckpointedDrm
-
-import scala.reflect.ClassTag
-
-class CheckpointedFlinkDrmOps[K: ClassTag](drm: CheckpointedDrm[K]) {
-  assert(drm.isInstanceOf[CheckpointedFlinkDrm[K]], "must be a Flink-backed matrix")
-
-  private[flinkbindings] val flinkDrm = drm.asInstanceOf[CheckpointedFlinkDrm[K]]
-
-  /** Flink matrix customization exposure */
-  def dataset = flinkDrm.ds
-
-}
diff --git a/community/community-engines/flink-batch/src/main/scala/org/apache/mahout/flinkbindings/drm/FlinkDrm.scala b/community/community-engines/flink-batch/src/main/scala/org/apache/mahout/flinkbindings/drm/FlinkDrm.scala
deleted file mode 100644
index aea62fa..0000000
--- a/community/community-engines/flink-batch/src/main/scala/org/apache/mahout/flinkbindings/drm/FlinkDrm.scala
+++ /dev/null
@@ -1,108 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.mahout.flinkbindings.drm
-
-import org.apache.flink.api.common.typeinfo.TypeInformation
-import org.apache.flink.api.scala._
-import org.apache.mahout.flinkbindings.{BlockifiedDrmDataSet, DrmDataSet, FlinkDistributedContext, wrapContext}
-import org.apache.mahout.math.scalabindings.RLikeOps._
-import org.apache.mahout.math.scalabindings._
-import org.apache.mahout.math.{DenseMatrix, Matrix, SparseRowMatrix}
-
-import scala.reflect.ClassTag
-
-trait FlinkDrm[K] {
-  def executionEnvironment: ExecutionEnvironment
-  def context: FlinkDistributedContext
-  def isBlockified: Boolean
-
-  def asBlockified: BlockifiedFlinkDrm[K]
-  def asRowWise: RowsFlinkDrm[K]
-
-  def classTag: ClassTag[K]
-}
-
-class RowsFlinkDrm[K: TypeInformation: ClassTag](val ds: DrmDataSet[K], val ncol: Int) extends FlinkDrm[K] {
-
-  def executionEnvironment = ds.getExecutionEnvironment
-  def context: FlinkDistributedContext = ds.getExecutionEnvironment
-
-  def isBlockified = false
-
-  def asBlockified : BlockifiedFlinkDrm[K] = {
-    val ncolLocal = ncol
-    val classTag = implicitly[ClassTag[K]]
-
-    val parts = ds.mapPartition {
-      values =>
-        val (keys, vectors) = values.toIterable.unzip
-
-        if (vectors.nonEmpty) {
-          val vector = vectors.head
-          val matrix: Matrix = if (vector.isDense) {
-            val matrix = new DenseMatrix(vectors.size, ncolLocal)
-            vectors.zipWithIndex.foreach { case (vec, idx) => matrix(idx, ::) := vec }
-            matrix
-          } else {
-            new SparseRowMatrix(vectors.size, ncolLocal, vectors.toArray)
-          }
-
-          Seq((keys.toArray(classTag), matrix))
-        } else {
-          Seq()
-        }
-    }
-
-    new BlockifiedFlinkDrm[K](parts, ncol)
-  }
-
-  def asRowWise = this
-
-  def classTag = implicitly[ClassTag[K]]
-
-}
-
-class BlockifiedFlinkDrm[K: TypeInformation: ClassTag](val ds: BlockifiedDrmDataSet[K], val ncol: Int) extends FlinkDrm[K] {
-
-
-  def executionEnvironment = ds.getExecutionEnvironment
-  def context: FlinkDistributedContext = ds.getExecutionEnvironment
-
-
-  def isBlockified = true
-
-  def asBlockified = this
-
-  def asRowWise = {
-    val out = ds.flatMap {
-      tuple =>
-        val keys = tuple._1
-        val block = tuple._2
-
-        keys.view.zipWithIndex.map {
-          case (key, idx) => (key, block(idx, ::))
-        }
-    }
-
-    new RowsFlinkDrm[K](out, ncol)
-  }
-
-  def classTag = implicitly[ClassTag[K]]
-
-}
\ No newline at end of file
diff --git a/community/community-engines/flink-batch/src/main/scala/org/apache/mahout/flinkbindings/io/DrmMetadata.scala b/community/community-engines/flink-batch/src/main/scala/org/apache/mahout/flinkbindings/io/DrmMetadata.scala
deleted file mode 100644
index 83ede9a..0000000
--- a/community/community-engines/flink-batch/src/main/scala/org/apache/mahout/flinkbindings/io/DrmMetadata.scala
+++ /dev/null
@@ -1,71 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.mahout.flinkbindings.io
-
-import scala.reflect.ClassTag
-import org.apache.hadoop.io._
-import java.util.Arrays
-
-/**
- * Flink DRM Metadata
- */
-class DrmMetadata(
-
-  /** Writable  key type as a sub-type of Writable */
-  val keyTypeWritable: Class[_],
-
-  /** Value writable type, as a sub-type of Writable */
-  val valueTypeWritable: Class[_]) {
-
-  import DrmMetadata._
-
-  /**
-   * @param keyClassTag: Actual drm key class tag once converted out of writable
-   * @param keyW2ValFunc: Conversion from Writable to value type of the DRM key
-   */
-  val (keyClassTag: ClassTag[_], unwrapKeyFunction: ((Writable) => Any)) = keyTypeWritable match {
-    case cz if cz == classOf[IntWritable] => ClassTag.Int -> w2int _
-    case cz if cz == classOf[LongWritable] => ClassTag.Long -> w2long _
-    case cz if cz == classOf[DoubleWritable] => ClassTag.Double -> w2double _
-    case cz if cz == classOf[FloatWritable] => ClassTag.Float -> w2float _
-    case cz if cz == classOf[Text] => ClassTag(classOf[String]) -> w2string _
-    case cz if cz == classOf[BooleanWritable] => ClassTag(classOf[Boolean]) -> w2bool _
-    case cz if cz == classOf[BytesWritable] => ClassTag(classOf[Array[Byte]]) -> w2bytes _
-    case _ => throw new IllegalArgumentException(s"Unsupported DRM key type:${keyTypeWritable.getName}")
-  }
-
-}
-
-object DrmMetadata {
-
-  private[io] def w2int(w: Writable) = w.asInstanceOf[IntWritable].get()
-
-  private[io] def w2long(w: Writable) = w.asInstanceOf[LongWritable].get()
-
-  private[io] def w2double(w: Writable) = w.asInstanceOf[DoubleWritable].get()
-
-  private[io] def w2float(w: Writable) = w.asInstanceOf[FloatWritable].get()
-
-  private[io] def w2string(w: Writable) = w.asInstanceOf[Text].toString()
-
-  private[io] def w2bool(w: Writable) = w.asInstanceOf[BooleanWritable].get()
-
-  private[io] def w2bytes(w: Writable) = Arrays.copyOf(w.asInstanceOf[BytesWritable].getBytes(),
-    w.asInstanceOf[BytesWritable].getLength())
-}
diff --git a/community/community-engines/flink-batch/src/main/scala/org/apache/mahout/flinkbindings/io/HDFSPathSearch.scala b/community/community-engines/flink-batch/src/main/scala/org/apache/mahout/flinkbindings/io/HDFSPathSearch.scala
deleted file mode 100644
index b027878..0000000
--- a/community/community-engines/flink-batch/src/main/scala/org/apache/mahout/flinkbindings/io/HDFSPathSearch.scala
+++ /dev/null
@@ -1,83 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.mahout.flinkbindings.io
-
-import org.apache.hadoop.conf.Configuration
-import org.apache.hadoop.fs.{FileStatus, FileSystem, Path}
-
-
-/**
- * Returns a [[java.lang.String]], which is comma delimited list of URIs discovered based on parameters
- * in the constructor.
- * The String is formatted to be input into [[org.apache.flink.api.scala.ExecutionEnvironment#textFile()]]
- * @param pathURI Where to start looking for inFiles, may be a list of comma delimited URIs
- * @param filePattern regex that must match the entire filename to have the file returned
- * @param recursive true traverses the filesystem recursively, default = false
- * 
- */
-case class HDFSPathSearch(pathURI: String, filePattern: String = "", recursive: Boolean = false) {
-
-  val conf = new Configuration()
-  val fs = FileSystem.get(conf)
-
-  /**
-   * Returns a string of comma delimited URIs matching the filePattern
-   * When pattern matching dirs are never returned, only traversed.
-   */
-  def uris: String = {
-    if (!filePattern.isEmpty) { // have file pattern so
-      val pathURIs = pathURI.split(",")
-      var files = ""
-      for (uri <- pathURIs) {
-        files = findFiles(uri, filePattern, files)
-      }
-      if (files.length > 0 && files.endsWith(",")) files = files.dropRight(1) // drop the last comma
-      files
-    } else {
-      pathURI
-    }
-  }
-
-  /**
-   * Find matching files in the dir, recursively call self when another directory is found
-   * Only files are matched, directories are traversed but never return a match
-   */
-  private def findFiles(dir: String, filePattern: String = ".*", files: String = ""): String = {
-    val seed = fs.getFileStatus(new Path(dir))
-    var f: String = files
-
-    if (seed.isDirectory) {
-      val fileStatuses: Array[FileStatus] = fs.listStatus(new Path(dir))
-      for (fileStatus <- fileStatuses) {
-        if (fileStatus.getPath().getName().matches(filePattern)
-          && !fileStatus.isDirectory) {
-          // found a file
-          if (fileStatus.getLen() != 0) {
-            // file is not empty
-            f = f + fileStatus.getPath.toUri.toString + ","
-          }
-        } else if (fileStatus.isDirectory && recursive) {
-          f = findFiles(fileStatus.getPath.toString, filePattern, f)
-        }
-      }
-    } else { f = dir } // was a filename not dir
-    f
-  }
-
-}
diff --git a/community/community-engines/flink-batch/src/main/scala/org/apache/mahout/flinkbindings/io/HDFSUtil.scala b/community/community-engines/flink-batch/src/main/scala/org/apache/mahout/flinkbindings/io/HDFSUtil.scala
deleted file mode 100644
index 73436f1..0000000
--- a/community/community-engines/flink-batch/src/main/scala/org/apache/mahout/flinkbindings/io/HDFSUtil.scala
+++ /dev/null
@@ -1,33 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.mahout.flinkbindings.io
-
-/**
- * High level Hadoop version-specific hdfs manipulations we need in context of our operations.
- *
- */
-trait HDFSUtil {
-
-  /**
-   *  Read DRM header information off (H)DFS.
-   */
-  def readDrmHeader(path: String): DrmMetadata
-
-}
-
diff --git a/community/community-engines/flink-batch/src/main/scala/org/apache/mahout/flinkbindings/io/Hadoop2HDFSUtil.scala b/community/community-engines/flink-batch/src/main/scala/org/apache/mahout/flinkbindings/io/Hadoop2HDFSUtil.scala
deleted file mode 100644
index 211088a..0000000
--- a/community/community-engines/flink-batch/src/main/scala/org/apache/mahout/flinkbindings/io/Hadoop2HDFSUtil.scala
+++ /dev/null
@@ -1,83 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.mahout.flinkbindings.io
-
-import org.apache.hadoop.conf.Configuration
-import org.apache.hadoop.fs.Path
-import org.apache.hadoop.io.SequenceFile.Reader
-import org.apache.hadoop.io.Writable
-
-object Hadoop2HDFSUtil extends HDFSUtil {
-
-  /**
-   * Read the header of a sequence file and determine the Key and Value type
-   * @param path - hdfs path of Sequence File
-   * @return
-   */
-  def readDrmHeader(path: String): DrmMetadata = {
-    val dfsPath = new Path(path)
-    val conf = new Configuration()
-    val fs = dfsPath.getFileSystem(conf)
-
-    fs.setConf(conf)
-
-    val partFilePath: Path = fs.listStatus(dfsPath)
-
-      // Filter out anything starting with .
-      .filter { s =>
-        !s.getPath.getName.startsWith("\\.") && !s.getPath.getName.startsWith("_") && !s.isDirectory
-      }
-
-      // Take path
-      .map(_.getPath)
-
-      // Take only one, if any
-      .headOption
-
-      // Require there's at least one partition file found.
-      .getOrElse {
-        throw new IllegalArgumentException(s"No partition files found in ${dfsPath.toString}.")
-      }
-
-     val reader = new Reader(fs.getConf, Reader.file(partFilePath))
-
-    try {
-      new DrmMetadata(
-        keyTypeWritable = reader.getKeyClass.asSubclass(classOf[Writable]),
-        valueTypeWritable = reader.getValueClass.asSubclass(classOf[Writable]))
-    } finally {
-      reader.close()
-    }
-
-  }
-
-  /**
-   * Delete a path from the filesystem
-   * @param path - hdfs path
-   */
-  def delete(path: String) {
-    val dfsPath = new Path(path)
-    val fs = dfsPath.getFileSystem(new Configuration())
-
-    if (fs.exists(dfsPath)) {
-      fs.delete(dfsPath, true)
-    }
-  }
-
-}
diff --git a/community/community-engines/flink-batch/src/main/scala/org/apache/mahout/flinkbindings/package.scala b/community/community-engines/flink-batch/src/main/scala/org/apache/mahout/flinkbindings/package.scala
deleted file mode 100644
index cf4da41..0000000
--- a/community/community-engines/flink-batch/src/main/scala/org/apache/mahout/flinkbindings/package.scala
+++ /dev/null
@@ -1,114 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.mahout
-
-import org.apache.flink.api.common.functions.MapFunction
-import org.apache.flink.api.common.typeinfo.TypeInformation
-import org.apache.flink.api.scala.utils._
-import org.apache.flink.api.scala.{DataSet, ExecutionEnvironment, _}
-import org.apache.mahout.flinkbindings.drm.{CheckpointedFlinkDrm, CheckpointedFlinkDrmOps, FlinkDrm, RowsFlinkDrm}
-import org.apache.mahout.math.drm.{BlockifiedDrmTuple, CheckpointedDrm, DistributedContext, DrmTuple, _}
-import org.apache.mahout.math.{DenseVector, Matrix, MatrixWritable, Vector, VectorWritable}
-import org.slf4j.LoggerFactory
-
-import scala.Array._
-import scala.reflect.ClassTag
-
-package object flinkbindings {
-
-  private[flinkbindings] val log = LoggerFactory.getLogger("org.apache.mahout.flinkbindings")
-
-  /** Row-wise organized DRM dataset type */
-  type DrmDataSet[K] = DataSet[DrmTuple[K]]
-
-  /**
-   * Blockified DRM dataset (keys of original DRM are grouped into array corresponding to rows of Matrix
-   * object value
-   */
-  type BlockifiedDrmDataSet[K] = DataSet[BlockifiedDrmTuple[K]]
-
-  implicit def wrapMahoutContext(context: DistributedContext): FlinkDistributedContext = {
-    assert(context.isInstanceOf[FlinkDistributedContext], "it must be FlinkDistributedContext")
-    context.asInstanceOf[FlinkDistributedContext]
-  }
-
-  implicit def wrapContext(env: ExecutionEnvironment): FlinkDistributedContext =
-    new FlinkDistributedContext(env)
-
-  implicit def unwrapContext(ctx: FlinkDistributedContext): ExecutionEnvironment = ctx.env
-
-  private[flinkbindings] implicit def castCheckpointedDrm[K: ClassTag](drm: CheckpointedDrm[K])
-    : CheckpointedFlinkDrm[K] = {
-
-    assert(drm.isInstanceOf[CheckpointedFlinkDrm[K]], "it must be a Flink-backed matrix")
-    drm.asInstanceOf[CheckpointedFlinkDrm[K]]
-  }
-
-  implicit def checkpointedDrmToFlinkDrm[K: TypeInformation: ClassTag](cp: CheckpointedDrm[K]): FlinkDrm[K] = {
-    val flinkDrm = castCheckpointedDrm(cp)
-    new RowsFlinkDrm[K](flinkDrm.ds, flinkDrm.ncol)
-  }
-
-  /** Adding Flink-specific ops */
-  implicit def cpDrm2cpDrmFlinkOps[K: ClassTag](drm: CheckpointedDrm[K]): CheckpointedFlinkDrmOps[K] =
-    new CheckpointedFlinkDrmOps[K](drm)
-
-  implicit def drm2cpDrmFlinkOps[K: ClassTag](drm: DrmLike[K]): CheckpointedFlinkDrmOps[K] = drm: CheckpointedDrm[K]
-
-
-  private[flinkbindings] implicit def wrapAsWritable(m: Matrix): MatrixWritable = new MatrixWritable(m)
-  private[flinkbindings] implicit def wrapAsWritable(v: Vector): VectorWritable = new VectorWritable(v)
-  private[flinkbindings] implicit def unwrapFromWritable(w: MatrixWritable): Matrix = w.get()
-  private[flinkbindings] implicit def unwrapFromWritable(w: VectorWritable): Vector = w.get()
-
-
-  def readCsv(file: String, delim: String = ",", comment: String = "#")
-             (implicit dc: DistributedContext): CheckpointedDrm[Long] = {
-    val vectors = dc.env.readTextFile(file)
-      .filter((in: String) => {
-        !in.startsWith(comment)
-      })
-      .map(new MapFunction[String, Vector] {
-        def map(in: String): Vector = {
-          val array = in.split(delim).map(_.toDouble)
-          new DenseVector(array)
-        }
-      })
-    datasetToDrm(vectors)
-  }
-
-  def datasetToDrm(ds: DataSet[Vector]): CheckpointedDrm[Long] = {
-    val zipped = ds.zipWithIndex
-    datasetWrap(zipped)
-  }
-
-  def datasetWrap[K: ClassTag](dataset: DataSet[(K, Vector)]): CheckpointedDrm[K] = {
-    implicit val typeInformation = FlinkEngine.generateTypeInformation[K]
-    new CheckpointedFlinkDrm[K](dataset)
-  }
-
-  private[flinkbindings] def extractRealClassTag[K: ClassTag](drm: DrmLike[K]): ClassTag[_] = drm.keyClassTag
-
-  private[flinkbindings] def getMahoutHome() = {
-    var mhome = System.getenv("MAHOUT_HOME")
-    if (mhome == null) mhome = System.getProperty("mahout.home")
-    require(mhome != null, "MAHOUT_HOME is required to spawn mahout-based flink jobs")
-    mhome
-  }
-}
\ No newline at end of file
diff --git a/community/community-engines/flink-batch/src/test/scala/org/apache/mahout/flinkbindings/DistributedFlinkSuite.scala b/community/community-engines/flink-batch/src/test/scala/org/apache/mahout/flinkbindings/DistributedFlinkSuite.scala
deleted file mode 100644
index 094c45b..0000000
--- a/community/community-engines/flink-batch/src/test/scala/org/apache/mahout/flinkbindings/DistributedFlinkSuite.scala
+++ /dev/null
@@ -1,74 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.mahout.flinkbindings
-
-import java.util.concurrent.TimeUnit
-
-import org.apache.flink.api.scala.ExecutionEnvironment
-import org.apache.flink.test.util.{ForkableFlinkMiniCluster, TestBaseUtils}
-import org.apache.mahout.math.drm.DistributedContext
-import org.apache.mahout.test.DistributedMahoutSuite
-import org.scalatest.{ConfigMap, Suite}
-
-import scala.concurrent.duration.FiniteDuration
-
-trait DistributedFlinkSuite extends DistributedMahoutSuite { this: Suite =>
-
-  protected implicit var mahoutCtx: DistributedContext = _
-  protected var env: ExecutionEnvironment = null
-
-  var cluster: Option[ForkableFlinkMiniCluster] = None
-  val parallelism = 4
-  protected val DEFAULT_AKKA_ASK_TIMEOUT: Long = 1000
-  protected var DEFAULT_TIMEOUT: FiniteDuration = new FiniteDuration(DEFAULT_AKKA_ASK_TIMEOUT, TimeUnit.SECONDS)
-
-  def initContext() {
-    mahoutCtx = wrapContext(env)
-  }
-
-  override def beforeEach() {
-    initContext()
-  }
-
-  override def afterEach() {
-    super.afterEach()
-  }
-
-  override protected def afterAll(configMap: ConfigMap): Unit = {
-    super.afterAll(configMap)
-    cluster.foreach(c => TestBaseUtils.stopCluster(c, DEFAULT_TIMEOUT))
-  }
-
-  override protected def beforeAll(configMap: ConfigMap): Unit = {
-    super.beforeAll(configMap)
-
-    val cl = TestBaseUtils.startCluster(
-      1,
-      parallelism,
-      false,
-      false,
-      true)
-
-    env = ExecutionEnvironment.createLocalEnvironment(parallelism)
-
-    cluster = Some(cl)
-    initContext()
-  }
-
-}
diff --git a/community/community-engines/flink-batch/src/test/scala/org/apache/mahout/flinkbindings/DrmLikeOpsSuite.scala b/community/community-engines/flink-batch/src/test/scala/org/apache/mahout/flinkbindings/DrmLikeOpsSuite.scala
deleted file mode 100644
index 288561b..0000000
--- a/community/community-engines/flink-batch/src/test/scala/org/apache/mahout/flinkbindings/DrmLikeOpsSuite.scala
+++ /dev/null
@@ -1,93 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.mahout.flinkbindings
-
-import org.apache.mahout.logging.info
-import org.apache.mahout.math.DenseMatrix
-import org.apache.mahout.math.drm.RLikeDrmOps._
-import org.apache.mahout.math.drm._
-import org.apache.mahout.math.scalabindings.RLikeOps._
-import org.apache.mahout.math.scalabindings._
-import org.scalatest.FunSuite
-
-
-class DrmLikeOpsSuite extends FunSuite with DistributedFlinkSuite {
-
-  test("norm") {
-    val inCoreA = dense((1, 2, 3), (2, 3, 4), (3, 4, 5))
-    val A = drmParallelize(m = inCoreA, numPartitions = 2)
-
-    (inCoreA.norm - A.norm) should be < 1e-6
-  }
-
-  test("colSums") {
-    val inCoreA = dense((1, 2, 3), (2, 3, 4), (3, 4, 5))
-    val A = drmParallelize(m = inCoreA, numPartitions = 2)
-    
-    (inCoreA.colSums - A.colSums).norm(2) should be < 1e-6
-  }
-
-  test("rowSums") {
-    val inCoreA = dense((1, 2, 3), (2, 3, 4), (3, 4, 5))
-    val A = drmParallelize(m = inCoreA, numPartitions = 2)
-    
-    (inCoreA.rowSums - A.rowSums).norm(2) should be < 1e-6
-  }
-
-  test("rowMeans") {
-    val inCoreA = dense((1, 2, 3), (2, 3, 4), (3, 4, 5))
-    val A = drmParallelize(m = inCoreA, numPartitions = 2)
-    
-    (inCoreA.rowMeans - A.rowMeans).norm(2) should be < 1e-6
-  }
-
-  test("numNonZeroElementsPerColumn") {
-    val A = dense((0, 2), (3, 0), (0, -30))
-    val drmA = drmParallelize(A, numPartitions = 2)
-
-    drmA.numNonZeroElementsPerColumn() should equal(A.numNonZeroElementsPerColumn())
-  }
-
-
-  test("drmParallelizeEmpty") {
-    val emptyDrm = drmParallelizeEmpty(nrow = 2, ncol = 2, numPartitions = 2)
-    val expected = dense((0, 0), (0, 0))
-
-    (emptyDrm.collect - expected).norm should be < 1e-6
-  }
-
-  test("Aggregating transpose") {
-
-    val mxA = new DenseMatrix(20, 10) := 1
-
-    val drmA = drmParallelize(mxA, numPartitions = 3)
-
-    val reassignedA = drmA.mapBlock() { case (keys, block) ⇒
-      keys.map(_ % 3) → block
-    }
-
-    val mxAggrA = reassignedA.t(::, 0 until 3).collect
-
-    info(mxAggrA.toString)
-
-    mxAggrA(0,0) shouldBe 7
-    mxAggrA(0,1) shouldBe 7
-    mxAggrA(0,2) shouldBe 6
-  }
-}
\ No newline at end of file
diff --git a/community/community-engines/flink-batch/src/test/scala/org/apache/mahout/flinkbindings/FlinkByteBCastSuite.scala b/community/community-engines/flink-batch/src/test/scala/org/apache/mahout/flinkbindings/FlinkByteBCastSuite.scala
deleted file mode 100644
index 4953647..0000000
--- a/community/community-engines/flink-batch/src/test/scala/org/apache/mahout/flinkbindings/FlinkByteBCastSuite.scala
+++ /dev/null
@@ -1,38 +0,0 @@
-/**
-  * Licensed to the Apache Software Foundation (ASF) under one
-  * or more contributor license agreements. See the NOTICE file
-  * distributed with this work for additional information
-  * regarding copyright ownership. The ASF licenses this file
-  * to you under the Apache License, Version 2.0 (the
-  * "License"); you may not use this file except in compliance
-  * with the License. You may obtain a copy of the License at
-  *
-  * http://www.apache.org/licenses/LICENSE-2.0
-  *
-  * Unless required by applicable law or agreed to in writing,
-  * software distributed under the License is distributed on an
-  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-  * KIND, either express or implied. See the License for the
-  * specific language governing permissions and limitations
-  * under the License.
-  */
-package org.apache.mahout.flinkbindings
-
-import org.apache.mahout.math.scalabindings.RLikeOps._
-import org.apache.mahout.math.scalabindings._
-import org.scalatest.FunSuite
-
-class FlinkByteBCastSuite extends FunSuite {
-
-  test("BCast vector") {
-    val v = dvec(1, 2, 3)
-    val vBc = FlinkByteBCast.wrap(v)
-    assert((v - vBc.value).norm(2) <= 1e-6)
-  }
-
-  test("BCast matrix") {
-    val m = dense((1, 2), (3, 4))
-    val mBc = FlinkByteBCast.wrap(m)
-    assert((m - mBc.value).norm <= 1e-6)
-  }
-}
\ No newline at end of file
diff --git a/community/community-engines/flink-batch/src/test/scala/org/apache/mahout/flinkbindings/RLikeOpsSuite.scala b/community/community-engines/flink-batch/src/test/scala/org/apache/mahout/flinkbindings/RLikeOpsSuite.scala
deleted file mode 100644
index 3e14d76..0000000
--- a/community/community-engines/flink-batch/src/test/scala/org/apache/mahout/flinkbindings/RLikeOpsSuite.scala
+++ /dev/null
@@ -1,326 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.mahout.flinkbindings
-
-import org.apache.mahout.flinkbindings._
-import org.apache.mahout.math._
-import org.apache.mahout.math.drm._
-import org.apache.mahout.math.drm.RLikeDrmOps._
-import org.apache.mahout.math.scalabindings._
-import org.apache.mahout.math.scalabindings.RLikeOps._
-import org.junit.runner.RunWith
-import org.scalatest.FunSuite
-import org.scalatest.junit.JUnitRunner
-import org.slf4j.Logger
-import org.slf4j.LoggerFactory
-
-
-class RLikeOpsSuite extends FunSuite with DistributedFlinkSuite {
-
-  val LOGGER = LoggerFactory.getLogger(getClass())
-
-  test("A %*% x") {
-    val inCoreA = dense((1, 2, 3), (2, 3, 4), (3, 4, 5))
-    val A = drmParallelize(m = inCoreA, numPartitions = 2)
-    val x: Vector = (0, 1, 2)
-
-    val res = A %*% x
-
-    val b = res.collect(::, 0)
-    assert(b == dvec(8, 11, 14))
-  }
-
-  test("A.t") {
-    val inCoreA = dense((1, 2, 3), (2, 3, 4))
-    val A = drmParallelize(m = inCoreA, numPartitions = 2)
-    val res = A.t.collect
-
-    val expected = inCoreA.t
-    assert((res - expected).norm < 1e-6)
-  }
-
-  test("A.t %*% x") {
-    val inCoreA = dense((1, 2, 3), (2, 3, 4))
-    val A = drmParallelize(m = inCoreA, numPartitions = 2)
-    val x = dvec(3, 11)
-    val res = (A.t %*% x).collect(::, 0)
-
-    val expected = inCoreA.t %*% x 
-    assert((res - expected).norm(2) < 1e-6)
-  }
-
-  test("A.t %*% B") {
-    val inCoreA = dense((1, 2), (2, 3), (3, 4))
-    val inCoreB = dense((1, 2), (3, 4), (11, 4))
-
-    val A = drmParallelize(m = inCoreA, numPartitions = 2)
-    val B = drmParallelize(m = inCoreB, numPartitions = 2)
-
-    val res = A.t %*% B
-
-    val expected = inCoreA.t %*% inCoreB
-    assert((res.collect - expected).norm < 1e-6)
-  }
-
-  test("A %*% B.t") {
-    val inCoreA = dense((1, 2), (2, 3), (3, 4))
-    val inCoreB = dense((1, 2), (3, 4), (11, 4))
-
-    val A = drmParallelize(m = inCoreA, numPartitions = 2)
-    val B = drmParallelize(m = inCoreB, numPartitions = 2)
-
-    val res = A %*% B.t
-
-    val expected = inCoreA %*% inCoreB.t
-    assert((res.collect - expected).norm < 1e-6)
-  }
-
-  test("A.t %*% A") {
-    val inCoreA = dense((1, 2), (2, 3), (3, 4))
-    val A = drmParallelize(m = inCoreA, numPartitions = 2)
-
-    val res = A.t %*% A
-
-    val expected = inCoreA.t %*% inCoreA
-    assert((res.collect - expected).norm < 1e-6)
-  }
-
-  test("A %*% B") {
-    val inCoreA = dense((1, 2), (2, 3), (3, 4)).t
-    val inCoreB = dense((1, 2), (3, 4), (11, 4))
-
-    val A = drmParallelize(m = inCoreA, numPartitions = 2)
-    val B = drmParallelize(m = inCoreB, numPartitions = 2)
-
-    val res = A %*% B
-
-    val expected = inCoreA %*% inCoreB
-    assert((res.collect - expected).norm < 1e-6)
-  }
-
-  test("A %*% B.t test 2") {
-    val mxA = Matrices.symmetricUniformView(10, 7, 80085)
-    val mxB = Matrices.symmetricUniformView(30, 7, 31337)
-    val A = drmParallelize(mxA, 3)
-    val B = drmParallelize(mxB, 4)
-
-    val ABt = (A %*% B.t).collect
-    (ABt - mxA %*% mxB.t).norm should be < 1e-7
-  }
-
-  test("ABt test") {
-    val mxX = dense((1, 2), (2, 3), (3, 4), (5, 6), (7, 8))
-    val mxY = dense((1, 2), (2, 3), (3, 4), (5, 6), (7, 8),
-                    (1, 2), (2, 3), (3, 4), (5, 6), (7, 8))
-
-    val drmX = drmParallelize(mxX, 3)
-    val drmY = drmParallelize(mxY, 4)
-
-    val XYt = (drmX %*% drmY.t).collect
-    val control = mxX %*% mxY.t
-    (XYt - control).norm should be < 1e-7
-  }
-
-
-  test("A * scalar") {
-    val inCoreA = dense((1, 2), (2, 3), (3, 4))
-    val A = drmParallelize(m = inCoreA, numPartitions = 2)
-
-    val res = A * 5
-    assert((res.collect - inCoreA * 5).norm < 1e-6)
-  }
-
-  test("A / scalar") {
-    val inCoreA = dense((1, 2), (2, 3), (3, 4)).t
-    val A = drmParallelize(m = inCoreA, numPartitions = 2)
-
-    val res = A / 5
-    assert((res.collect - (inCoreA / 5)).norm < 1e-6)
-  }
-
-  test("A + scalar") {
-    val inCoreA = dense((1, 2), (2, 3), (3, 4))
-    val A = drmParallelize(m = inCoreA, numPartitions = 2)
-
-    val res = A + 5
-    assert((res.collect - (inCoreA + 5)).norm < 1e-6)
-  }
-
-  test("A - scalar") {
-    val inCoreA = dense((1, 2), (2, 3), (3, 4))
-    val A = drmParallelize(m = inCoreA, numPartitions = 2)
-
-    val res = A - 5
-    assert((res.collect - (inCoreA - 5)).norm < 1e-6)
-  }
-
-  test("A * B") {
-    val inCoreA = dense((1, 2), (2, 3), (3, 4))
-    val inCoreB = dense((1, 2), (3, 4), (11, 4))
-
-    val A = drmParallelize(m = inCoreA, numPartitions = 2)
-    val B = drmParallelize(m = inCoreB, numPartitions = 2)
-
-    val res = A * B
-    val expected = inCoreA * inCoreB
-    assert((res.collect - expected).norm < 1e-6)
-  }
-
-  test("A / B") {
-    val inCoreA = dense((1, 2), (2, 3), (3, 4))
-    val inCoreB = dense((1, 2), (3, 4), (11, 4))
-
-    val A = drmParallelize(m = inCoreA, numPartitions = 2)
-    val B = drmParallelize(m = inCoreB, numPartitions = 2)
-
-    val res = A / B
-    val expected = inCoreA / inCoreB
-    assert((res.collect - expected).norm < 1e-6)
-  }
-
-  test("A + B") {
-    val inCoreA = dense((1, 2), (2, 3), (3, 4))
-    val inCoreB = dense((1, 2), (3, 4), (11, 4))
-
-    val A = drmParallelize(m = inCoreA, numPartitions = 2)
-    val B = drmParallelize(m = inCoreB, numPartitions = 2)
-
-    val res = A + B
-    val expected = inCoreA + inCoreB
-    assert((res.collect - expected).norm < 1e-6)
-  }
-
-  test("A - B") {
-    val inCoreA = dense((1, 2), (2, 3), (3, 4))
-    val inCoreB = dense((1, 2), (3, 4), (11, 4))
-
-    val A = drmParallelize(m = inCoreA, numPartitions = 2)
-    val B = drmParallelize(m = inCoreB, numPartitions = 2)
-
-    val res = A - B
-    val expected = inCoreA - inCoreB
-    assert((res.collect - expected).norm < 1e-6)
-  }
-
-  test("A cbind B") {
-    val inCoreA = dense((1, 2), (2, 3), (3, 4))
-    val inCoreB = dense((1, 2), (3, 4), (11, 4))
-    val A = drmParallelize(m = inCoreA, numPartitions = 2)
-    val B = drmParallelize(m = inCoreB, numPartitions = 2)
-
-    val res = A cbind B
-    val expected = dense((1, 2, 1, 2), (2, 3, 3, 4), (3, 4, 11, 4))
-    assert((res.collect - expected).norm < 1e-6)
-  }
-
-  test("1 cbind A") {
-    val inCoreA = dense((1, 2), (2, 3), (3, 4))
-    val A = drmParallelize(m = inCoreA, numPartitions = 2)
-
-    val res = 1 cbind A
-    val expected = dense((1, 1, 2), (1, 2, 3), (1, 3, 4))
-    assert((res.collect - expected).norm < 1e-6)
-  }
-
-  test("A cbind 1") {
-    val inCoreA = dense((1, 2), (2, 3), (3, 4))
-    val A = drmParallelize(m = inCoreA, numPartitions = 2)
-
-    val res = A cbind 1
-    val expected = dense((1, 2, 1), (2, 3, 1), (3, 4, 1))
-    assert((res.collect - expected).norm < 1e-6)
-  }
-
-  test("A rbind B") {
-    val inCoreA = dense((1, 2), (2, 3), (3, 4))
-    val inCoreB = dense((1, 2), (3, 4), (11, 4))
-    val A = drmParallelize(m = inCoreA, numPartitions = 2)
-    val B = drmParallelize(m = inCoreB, numPartitions = 2)
-
-    val res = A rbind B
-    val expected = dense((1, 2), (2, 3), (3, 4), (1, 2), (3, 4), (11, 4))
-    assert((res.collect - expected).norm < 1e-6)
-  }
-
-  test("A row slice") {
-    val inCoreA = dense((1, 2), (2, 3), (3, 4), (4, 4), (5, 5), (6, 7))
-    val A = drmParallelize(m = inCoreA, numPartitions = 2)
-
-    val res = A(2 until 5, ::)
-    val expected = inCoreA(2 until 5, ::)
-    assert((res.collect - expected).norm < 1e-6)
-  }
-
-  test("A column slice") {
-    val inCoreA = dense((1, 2, 1, 2), (2, 3, 3, 4), (3, 4, 11, 4))
-    val A = drmParallelize(m = inCoreA, numPartitions = 2)
-
-    val res = A(::, 0 until 2)
-    val expected = inCoreA(::, 0 until 2)
-    assert((res.collect - expected).norm < 1e-6)
-  }
-
-  test("A %*% inCoreB") {
-    val inCoreA = dense((1, 2), (2, 3), (3, 4)).t
-    val inCoreB = dense((1, 2), (3, 4), (11, 4))
-
-    val A = drmParallelize(m = inCoreA, numPartitions = 2)
-
-    val res = A %*% inCoreB
-
-    val expected = inCoreA %*% inCoreB
-    assert((res.collect - expected).norm < 1e-6)
-  }
-
-  test("drmBroadcast") {
-    val inCoreA = dense((1, 2), (3, 4), (11, 4))
-    val x = dvec(1, 2)
-    val A = drmParallelize(m = inCoreA, numPartitions = 2)
-
-    val b = drmBroadcast(x)
-
-    val res = A.mapBlock(1) { case (idx, block) =>
-      (idx, (block %*% b).toColMatrix)
-    }
-
-    val expected = inCoreA %*% x
-    assert((res.collect(::, 0) - expected).norm(2) < 1e-6)
-  }
-
-  test("A.t %*% B with Long keys") {
-    val inCoreA = dense((1, 2), (3, 4), (3, 5))
-    val inCoreB = dense((3, 5), (4, 6), (0, 1))
-
-    val A = drmParallelize(inCoreA, numPartitions = 2).mapBlock()({
-      case (keys, block) => (keys.map(_.toLong), block)
-    })
-
-    val B = drmParallelize(inCoreB, numPartitions = 2).mapBlock()({
-      case (keys, block) => (keys.map(_.toLong), block)
-    })
-
-    val C = A.t %*% B
-    val inCoreC = C.collect
-    val expected = inCoreA.t %*% inCoreB
-
-    (inCoreC - expected).norm should be < 1E-10
-  }
-
-
-}
\ No newline at end of file
diff --git a/community/community-engines/flink-batch/src/test/scala/org/apache/mahout/flinkbindings/UseCasesSuite.scala b/community/community-engines/flink-batch/src/test/scala/org/apache/mahout/flinkbindings/UseCasesSuite.scala
deleted file mode 100644
index fa49114..0000000
--- a/community/community-engines/flink-batch/src/test/scala/org/apache/mahout/flinkbindings/UseCasesSuite.scala
+++ /dev/null
@@ -1,141 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.mahout.flinkbindings
-
-import org.apache.mahout.math.{Matrices, Vector}
-import org.apache.mahout.math.drm.RLikeDrmOps._
-import org.apache.mahout.math.drm._
-import org.apache.mahout.math.function.IntIntFunction
-import org.apache.mahout.math.scalabindings.RLikeOps._
-import org.apache.mahout.math.scalabindings._
-import org.scalatest.FunSuite
-import org.slf4j.LoggerFactory
-
-import scala.util.hashing.MurmurHash3
-
-class UseCasesSuite extends FunSuite with DistributedFlinkSuite {
-
-  val LOGGER = LoggerFactory.getLogger(getClass())
-
-  test("use case: Power interation 1000 x 1000 matrix") {
-    val dim = 1000
-
-    // we want a symmetric matrix so we can have real eigenvalues
-    val inCoreA = symmtericMatrix(dim, max = 2000)
-
-    val A = drmParallelize(m = inCoreA, numPartitions = 2)
-
-    var x: Vector = 1 to dim map (_ => 1.0 / Math.sqrt(dim))
-    var converged = false
-
-    var iteration = 1
-
-    while (!converged) {
-      LOGGER.info(s"iteration #$iteration...")
-
-      val Ax = A %*% x
-      var x_new = Ax.collect(::, 0)
-      x_new = x_new / x_new.norm(2)
-
-      val diff = (x_new - x).norm(2)
-      LOGGER.info(s"difference norm is $diff")
-
-      converged = diff < 1e-6
-      iteration = iteration + 1
-      x = x_new
-    }
-
-    LOGGER.info("converged")
-    // TODO: add test that it's the 1st PC
-  }
-
-  def symmtericMatrix(dim: Int, max: Int, seed: Int = 0x31337) = {
-    Matrices.functionalMatrixView(dim, dim, new IntIntFunction {
-      def apply(i: Int, j: Int): Double = {
-        val arr = Array(i + j, i * j, i + j + 31, i / (j + 1) + j / (i + 1))
-        Math.abs(MurmurHash3.arrayHash(arr, seed) % max)
-      }
-    })
-  }
-
-  test("use case: OLS Regression") {
-    val inCoreA = dense((1, 2), (2, 3), (3, 4), (5, 6), (7, 8), (9, 10))
-    val x = dvec(1, 2, 2, 3, 3, 3)
-    val A = drmParallelize(m = inCoreA, numPartitions = 2)
-    val AtA = A.t %*% A
-    val Atx = A.t %*% x
-
-    val w = solve(AtA, Atx)
-
-    val expected = solve(inCoreA.t %*% inCoreA, inCoreA.t %*% x)
-    assert((w(::, 0) - expected).norm(2) < 1e-6)
-  }
-
-  test("use case: Ridge Regression") {
-    val inCoreA = dense((1, 2), (2, 3), (3, 4), (5, 6), (7, 8), (9, 10))
-    val x = dvec(1, 2, 2, 3, 3, 3)
-    val A = drmParallelize(m = inCoreA, numPartitions = 2)
-
-    val lambda = 1.0
-    val reg = drmParallelize(diag(lambda, 2)) 
-
-    val w = solve(A.t %*% A + reg, A.t %*% x)
-
-    val expected = solve(inCoreA.t %*% inCoreA + diag(lambda, 2), inCoreA.t %*% x)
-    assert((w(::, 0) - expected).norm(2) < 1e-6)
-  }
-
-  // TODO: doesn't pass! 
-  // Call to localhost/127.0.0.1:6498 failed on local exception
-  ignore("use case: trimmed-EVD via power iteration") {
-    val dim = 1000
-    val k = 3
-
-    val inCoreA = symmtericMatrix(dim, max = 2000)
-    var A = drmParallelize(m = inCoreA, numPartitions = 2)
-
-    val eigenvectors = for (i <- 0 until k) yield {
-      var x: Vector = 1 to dim map (_ => 1.0 / Math.sqrt(dim))
-      var converged = false
-
-      while (!converged) {
-        val Ax = A %*% x
-        var x_new = Ax.collect(::, 0)
-        x_new = x_new / x_new.norm(2)
-
-        val diff = (x_new - x).norm(2)
-
-        converged = diff < 1e-6
-        x = x_new
-      }
-
-      println(s"${i}th principal component found...")
-      // assuming 0th component of x is not zero
-      val evalue = (A %*% x).collect(0, 0) / x(0) 
-      val evdComponent = drmParallelize(evalue * x cross x)
-
-      A = A - evdComponent
-
-      x
-    }
-
-    eigenvectors.foreach(println(_))
-  }
-
-}
\ No newline at end of file
diff --git a/community/community-engines/flink-batch/src/test/scala/org/apache/mahout/flinkbindings/blas/LATestSuite.scala b/community/community-engines/flink-batch/src/test/scala/org/apache/mahout/flinkbindings/blas/LATestSuite.scala
deleted file mode 100644
index 95d0969..0000000
--- a/community/community-engines/flink-batch/src/test/scala/org/apache/mahout/flinkbindings/blas/LATestSuite.scala
+++ /dev/null
@@ -1,211 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.mahout.flinkbindings.blas
-
-import org.apache.flink.api.scala._
-import org.apache.mahout.flinkbindings._
-import org.apache.mahout.flinkbindings.drm.CheckpointedFlinkDrm
-import org.apache.mahout.math._
-import org.apache.mahout.math.drm._
-import org.apache.mahout.math.drm.logical.{OpAx, _}
-import org.apache.mahout.math.scalabindings.RLikeOps._
-import org.apache.mahout.math.scalabindings._
-import org.scalatest.FunSuite
-
-class LATestSuite extends FunSuite with DistributedFlinkSuite {
-
-  test("Ax blockified") {
-    val inCoreA = dense((1, 2, 3), (2, 3, 4), (3, 4, 5))
-    val A = drmParallelize(m = inCoreA, numPartitions = 2)
-    val x: Vector = (0, 1, 2)
-
-    val opAx = new OpAx(A, x)
-    val res = FlinkOpAx.blockifiedBroadcastAx(opAx, A)
-    val drm = new CheckpointedFlinkDrm(res.asRowWise.ds)
-    val output = drm.collect
-
-    val b = output(::, 0)
-    assert(b == dvec(8, 11, 14))
-  }
-
-  test("At sparseTrick") {
-    val inCoreA = dense((1, 2, 3), (2, 3, 4))
-    val A = drmParallelize(m = inCoreA, numPartitions = 2)
-
-    val opAt = new OpAt(A)
-    val res = FlinkOpAt.sparseTrick(opAt, A)
-    val drm = new CheckpointedFlinkDrm(res.asRowWise.ds, _nrow=inCoreA.ncol, _ncol=inCoreA.nrow)
-    val output = drm.collect
-
-    assert((output - inCoreA.t).norm < 1e-6)
-  }
-
-  test("AtB notZippable") {
-    val inCoreAt = dense((1, 2), (2, 3), (3, 4))
-
-    val At = drmParallelize(m = inCoreAt, numPartitions = 2)
-
-    val inCoreB = dense((1, 2), (3, 4), (11, 4))
-    val B = drmParallelize(m = inCoreB, numPartitions = 2)
-
-    val opAtB = new OpAtB(At, B)
-    val res = FlinkOpAtB.notZippable(opAtB, At, B)
-
-    val drm = new CheckpointedFlinkDrm(res.asRowWise.ds, _nrow=inCoreAt.ncol, _ncol=inCoreB.ncol)
-    val output = drm.collect
-
-    val expected = inCoreAt.t %*% inCoreB
-    assert((output - expected).norm < 1e-6)
-  }
-
-  test("AewScalar opScalarNoSideEffect") {
-    val inCoreA = dense((1, 2), (2, 3), (3, 4))
-    val A = drmParallelize(m = inCoreA, numPartitions = 2)
-    val scalar = 5.0
-
-    val op = new OpAewScalar(A, scalar, "*") 
-    val res = FlinkOpAewScalar.opScalarNoSideEffect(op, A, scalar)
-
-    val drm = new CheckpointedFlinkDrm(res.asRowWise.ds, _nrow=inCoreA.nrow, _ncol=inCoreA.ncol)
-    val output = drm.collect
-
-    val expected = inCoreA  * scalar
-    assert((output - expected).norm < 1e-6)
-  }
-
-  test("AewB rowWiseJoinNoSideEffect") {
-    val inCoreA = dense((1, 2), (2, 3), (3, 4))
-    val A = drmParallelize(m = inCoreA, numPartitions = 2)
-
-    val op = new OpAewB(A, A, "*")
-    val res = FlinkOpAewB.rowWiseJoinNoSideEffect(op, A, A)
-
-    val drm = new CheckpointedFlinkDrm(res.asRowWise.ds, _nrow=inCoreA.nrow, _ncol=inCoreA.ncol)
-    val output = drm.collect
-
-    assert((output - (inCoreA  * inCoreA)).norm < 1e-6)
-  }
-
-  test("Cbind") {
-    val inCoreA = dense((1, 2), (2, 3), (3, 4))
-    val inCoreB = dense((4, 4), (5, 5), (6, 7))
-    val A = drmParallelize(m = inCoreA, numPartitions = 2)
-    val B = drmParallelize(m = inCoreB, numPartitions = 2)
-
-    val op = new OpCbind(A, B)
-    val res = FlinkOpCBind.cbind(op, A, B)
-
-    val drm = new CheckpointedFlinkDrm(res.asRowWise.ds, _nrow=inCoreA.nrow,
-        _ncol= inCoreA.ncol + inCoreB.ncol)
-    val output = drm.collect
-
-    val expected = dense((1, 2, 4, 4), (2, 3, 5, 5), (3, 4, 6, 7))
-    assert((output - expected).norm < 1e-6)
-  }
-
-  test("CbindScalar left") {
-    val inCoreA = dense((1, 2), (2, 3), (3, 4))
-    val A = drmParallelize(m = inCoreA, numPartitions = 2)
-
-    val op = new OpCbindScalar(A, 1, true)
-    val res = FlinkOpCBind.cbindScalar(op, A, 1)
-
-    val drm = new CheckpointedFlinkDrm(res.asRowWise.ds, _nrow=inCoreA.nrow,
-        _ncol= inCoreA.ncol + 1)
-    val output = drm.collect
-
-    val expected = dense((1, 1, 2), (1, 2, 3), (1, 3, 4))
-    assert((output - expected).norm < 1e-6)
-  }
-
-  test("CbindScalar right") {
-    val inCoreA = dense((1, 2), (2, 3), (3, 4))
-    val A = drmParallelize(m = inCoreA, numPartitions = 2)
-
-    val op = new OpCbindScalar(A, 1, false)
-    val res = FlinkOpCBind.cbindScalar(op, A, 1)
-
-    val drm = new CheckpointedFlinkDrm(res.asRowWise.ds, _nrow=inCoreA.nrow,
-        _ncol= inCoreA.ncol + 1)
-    val output = drm.collect
-
-    val expected = dense((1, 2, 1), (2, 3, 1), (3, 4, 1))
-    assert((output - expected).norm < 1e-6)
-  }
-
-  test("slice") {
-    val inCoreA = dense((1, 2), (2, 3), (3, 4), (4, 4), (5, 5), (6, 7))
-    val A = drmParallelize(m = inCoreA, numPartitions = 2)
-
-    val range = 2 until 5
-    val op = new OpRowRange(A, range)
-    val res = FlinkOpRowRange.slice(op, A)
-
-    val drm = new CheckpointedFlinkDrm(res.asRowWise.ds, _nrow=op.nrow,
-        _ncol=inCoreA.ncol)
-    val output = drm.collect
-
-    val expected = inCoreA(2 until 5, ::)
-    assert((output - expected).norm < 1e-6)
-  }
-
-  test("A times inCoreB") {
-    val inCoreA = dense((1, 2, 3), (2, 3, 1), (3, 4, 4), (4, 4, 5), (5, 5, 7), (6, 7, 11))
-    val inCoreB = dense((2, 1), (3, 4), (5, 11))
-    val A = drmParallelize(m = inCoreA, numPartitions = 2)
-
-    val op = new OpTimesRightMatrix(A, inCoreB)
-    val res = FlinkOpTimesRightMatrix.drmTimesInCore(op, A, inCoreB)
-
-    val drm = new CheckpointedFlinkDrm(res.asRowWise.ds, _nrow=op.nrow,
-        _ncol=op.ncol)
-    val output = drm.collect
-
-    val expected = inCoreA %*% inCoreB
-    assert((output - expected).norm < 1e-6)
-  }
-
-  test("At A slim") {
-    val inCoreA = dense((1, 2, 3), (2, 3, 1), (3, 4, 4), (4, 4, 5), (5, 5, 7), (6, 7, 11))
-    val A = drmParallelize(m = inCoreA, numPartitions = 2)
-
-    val op = new OpAtA(A)
-    val output = FlinkOpAtA.slim(op, A)
-
-    val expected = inCoreA.t %*% inCoreA
-    assert((output - expected).norm < 1e-6)
-  }
-
-  test("At A fat") {
-    val inCoreA = dense((1, 2, 3, 2, 3, 1), (3, 4, 4, 4, 4, 5), (5, 5, 7, 6, 7, 11))
-    val A = drmParallelize(m = inCoreA, numPartitions = 2)
-    val Aany = A.asInstanceOf[CheckpointedDrm[Any]]
-
-    val op = new OpAtA(Aany)
-
-    val res = FlinkOpAtA.fat(op, Aany)
-    val drm = new CheckpointedFlinkDrm(res.asRowWise.ds, _nrow=op.nrow, _ncol=op.ncol)
-    val output = drm.collect
-    println(output)
-
-    val expected = inCoreA.t %*% inCoreA
-    assert((output - expected).norm < 1e-6)
-  }
-
-}
\ No newline at end of file
diff --git a/community/community-engines/flink-batch/src/test/scala/org/apache/mahout/flinkbindings/examples/ReadCsvExample.scala b/community/community-engines/flink-batch/src/test/scala/org/apache/mahout/flinkbindings/examples/ReadCsvExample.scala
deleted file mode 100644
index 4e713c7..0000000
--- a/community/community-engines/flink-batch/src/test/scala/org/apache/mahout/flinkbindings/examples/ReadCsvExample.scala
+++ /dev/null
@@ -1,39 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.mahout.flinkbindings.examples
-
-import org.apache.flink.api.scala.ExecutionEnvironment
-import org.apache.mahout.math.drm._
-import org.apache.mahout.math.drm.RLikeDrmOps._
-import org.apache.mahout.flinkbindings._
-
-object ReadCsvExample {
-
-  def main(args: Array[String]): Unit = {
-    val filePath = "file:///c:/tmp/data/slashdot0902/Slashdot0902.txt"
-
-    val env = ExecutionEnvironment.getExecutionEnvironment
-    implicit val ctx = new FlinkDistributedContext(env)
-
-    val drm = readCsv(filePath, delim = "\t", comment = "#")
-    val C = drm.t %*% drm
-    println(C.collect)
-  }
-
-}
diff --git a/community/community-engines/flink-batch/src/test/scala/org/apache/mahout/flinkbindings/standard/ClusteringSuite.scala b/community/community-engines/flink-batch/src/test/scala/org/apache/mahout/flinkbindings/standard/ClusteringSuite.scala
deleted file mode 100644
index ea86c91..0000000
--- a/community/community-engines/flink-batch/src/test/scala/org/apache/mahout/flinkbindings/standard/ClusteringSuite.scala
+++ /dev/null
@@ -1,26 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.mahout.flinkbindings.standard
-
-import org.apache.mahout.flinkbindings.DistributedFlinkSuite
-import org.apache.mahout.math.algorithms.ClusteringSuiteBase
-import org.scalatest.FunSuite
-
-class ClusteringSuite extends FunSuite
-  with DistributedFlinkSuite with ClusteringSuiteBase
-
diff --git a/community/community-engines/flink-batch/src/test/scala/org/apache/mahout/flinkbindings/standard/DrmLikeOpsSuite.scala b/community/community-engines/flink-batch/src/test/scala/org/apache/mahout/flinkbindings/standard/DrmLikeOpsSuite.scala
deleted file mode 100644
index 3752187..0000000
--- a/community/community-engines/flink-batch/src/test/scala/org/apache/mahout/flinkbindings/standard/DrmLikeOpsSuite.scala
+++ /dev/null
@@ -1,28 +0,0 @@
-/**
-  * Licensed to the Apache Software Foundation (ASF) under one
-  * or more contributor license agreements. See the NOTICE file
-  * distributed with this work for additional information
-  * regarding copyright ownership. The ASF licenses this file
-  * to you under the Apache License, Version 2.0 (the
-  * "License"); you may not use this file except in compliance
-  * with the License. You may obtain a copy of the License at
-  *
-  * http://www.apache.org/licenses/LICENSE-2.0
-  *
-  * Unless required by applicable law or agreed to in writing,
-  * software distributed under the License is distributed on an
-  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-  * KIND, either express or implied. See the License for the
-  * specific language governing permissions and limitations
-  * under the License.
-  */
-package org.apache.mahout.flinkbindings.standard
-
-import org.apache.mahout.flinkbindings._
-import org.apache.mahout.math.drm._
-import org.scalatest.FunSuite
-
-class DrmLikeOpsSuite extends FunSuite with DistributedFlinkSuite
-      with DrmLikeOpsSuiteBase {
-
-}
\ No newline at end of file
diff --git a/community/community-engines/flink-batch/src/test/scala/org/apache/mahout/flinkbindings/standard/DrmLikeSuite.scala b/community/community-engines/flink-batch/src/test/scala/org/apache/mahout/flinkbindings/standard/DrmLikeSuite.scala
deleted file mode 100644
index 0a1653b..0000000
--- a/community/community-engines/flink-batch/src/test/scala/org/apache/mahout/flinkbindings/standard/DrmLikeSuite.scala
+++ /dev/null
@@ -1,28 +0,0 @@
-/**
-  * Licensed to the Apache Software Foundation (ASF) under one
-  * or more contributor license agreements. See the NOTICE file
-  * distributed with this work for additional information
-  * regarding copyright ownership. The ASF licenses this file
-  * to you under the Apache License, Version 2.0 (the
-  * "License"); you may not use this file except in compliance
-  * with the License. You may obtain a copy of the License at
-  *
-  * http://www.apache.org/licenses/LICENSE-2.0
-  *
-  * Unless required by applicable law or agreed to in writing,
-  * software distributed under the License is distributed on an
-  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-  * KIND, either express or implied. See the License for the
-  * specific language governing permissions and limitations
-  * under the License.
-  */
-package org.apache.mahout.flinkbindings.standard
-
-import org.apache.mahout.flinkbindings._
-import org.apache.mahout.math.drm._
-import org.scalatest.FunSuite
-
-class DrmLikeSuite extends FunSuite with DistributedFlinkSuite
-      with DrmLikeSuiteBase {
-
-}
\ No newline at end of file
diff --git a/community/community-engines/flink-batch/src/test/scala/org/apache/mahout/flinkbindings/standard/FlinkDistributedDecompositionsSuite.scala b/community/community-engines/flink-batch/src/test/scala/org/apache/mahout/flinkbindings/standard/FlinkDistributedDecompositionsSuite.scala
deleted file mode 100644
index a1054af..0000000
--- a/community/community-engines/flink-batch/src/test/scala/org/apache/mahout/flinkbindings/standard/FlinkDistributedDecompositionsSuite.scala
+++ /dev/null
@@ -1,221 +0,0 @@
-/**
-  * Licensed to the Apache Software Foundation (ASF) under one
-  * or more contributor license agreements. See the NOTICE file
-  * distributed with this work for additional information
-  * regarding copyright ownership. The ASF licenses this file
-  * to you under the Apache License, Version 2.0 (the
-  * "License"); you may not use this file except in compliance
-  * with the License. You may obtain a copy of the License at
-  *
-  * http://www.apache.org/licenses/LICENSE-2.0
-  *
-  * Unless required by applicable law or agreed to in writing,
-  * software distributed under the License is distributed on an
-  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-  * KIND, either express or implied. See the License for the
-  * specific language governing permissions and limitations
-  * under the License.
-  */
-package org.apache.mahout.flinkbindings.standard
-
-import org.apache.mahout.common.RandomUtils
-import org.apache.mahout.flinkbindings._
-import org.apache.mahout.math.{Matrices, SparseRowMatrix}
-import org.apache.mahout.math.decompositions._
-import org.apache.mahout.math.drm.{CacheHint, _}
-import org.scalatest.{FunSuite, Matchers}
-import org.apache.mahout.math._
-import scalabindings._
-import RLikeOps._
-import RLikeDrmOps._
-
-import scala.math._
-
-// Exact copy of the DistributedDecompositionsSuiteBase trait with the exception of the
-// matrix size in the dals test which has been lowered to 350 x 350 from 500 x 500
-// due to some Flink serialization issues.
-
-class FlinkDistributedDecompositionsSuite extends FunSuite with DistributedFlinkSuite
-      with Matchers {this:FunSuite =>
-
-
-  test("thin distributed qr") {
-
-    val inCoreA = dense(
-      (1, 2, 3, 4),
-      (2, 3, 4, 5),
-      (3, -4, 5, 6),
-      (4, 5, 6, 7),
-      (8, 6, 7, 8)
-    )
-
-    val drmA = drmParallelize(inCoreA, numPartitions = 2)
-    val (drmQ, inCoreR) = dqrThin(drmA, checkRankDeficiency = false)
-
-    // Assert optimizer still knows Q and A are identically partitioned
-    drmQ.partitioningTag should equal(drmA.partitioningTag)
-
-    //    drmQ.rdd.partitions.size should be(A.rdd.partitions.size)
-    //
-    //    // Should also be zippable
-    //    drmQ.rdd.zip(other = A.rdd)
-
-    val inCoreQ = drmQ.collect
-
-    printf("A=\n%s\n", inCoreA)
-    printf("Q=\n%s\n", inCoreQ)
-    printf("R=\n%s\n", inCoreR)
-
-    val (qControl, rControl) = qr(inCoreA)
-    printf("qControl=\n%s\n", qControl)
-    printf("rControl=\n%s\n", rControl)
-
-    // Validate with Cholesky
-    val ch = chol(inCoreA.t %*% inCoreA)
-    printf("A'A=\n%s\n", inCoreA.t %*% inCoreA)
-    printf("L:\n%s\n", ch.getL)
-
-    val rControl2 = (ch.getL cloned).t
-    val qControl2 = ch.solveRight(inCoreA)
-    printf("qControl2=\n%s\n", qControl2)
-    printf("rControl2=\n%s\n", rControl2)
-
-    // Householder approach seems to be a little bit more stable
-    (rControl - inCoreR).norm should be < 1E-5
-    (qControl - inCoreQ).norm should be < 1E-5
-
-    // Assert identicity with in-core Cholesky-based -- this should be tighter.
-    (rControl2 - inCoreR).norm should be < 1E-10
-    (qControl2 - inCoreQ).norm should be < 1E-10
-
-    // Assert orthogonality:
-    // (a) Q[,j] dot Q[,j] == 1.0 for all j
-    // (b) Q[,i] dot Q[,j] == 0.0 for all i != j
-    for (col <- 0 until inCoreQ.ncol)
-      ((inCoreQ(::, col) dot inCoreQ(::, col)) - 1.0).abs should be < 1e-10
-    for (col1 <- 0 until inCoreQ.ncol - 1; col2 <- col1 + 1 until inCoreQ.ncol)
-      (inCoreQ(::, col1) dot inCoreQ(::, col2)).abs should be < 1e-10
-
-
-  }
-
-  test("dssvd - the naive-est - q=0") {
-    dssvdNaive(q = 0)
-  }
-
-  test("ddsvd - naive - q=1") {
-    dssvdNaive(q = 1)
-  }
-
-  test("ddsvd - naive - q=2") {
-    dssvdNaive(q = 2)
-  }
-
-
-  def dssvdNaive(q: Int) {
-    val inCoreA = dense(
-      (1, 2, 3, 4),
-      (2, 3, 4, 5),
-      (3, -4, 5, 6),
-      (4, 5, 6, 7),
-      (8, 6, 7, 8)
-    )
-    val drmA = drmParallelize(inCoreA, numPartitions = 2)
-
-    val (drmU, drmV, s) = dssvd(drmA, k = 4, q = q)
-    val (inCoreU, inCoreV) = (drmU.collect, drmV.collect)
-
-    printf("U:\n%s\n", inCoreU)
-    printf("V:\n%s\n", inCoreV)
-    printf("Sigma:\n%s\n", s)
-
-    (inCoreA - (inCoreU %*%: diagv(s)) %*% inCoreV.t).norm should be < 1E-5
-  }
-
-  test("dspca") {
-
-    val rnd = RandomUtils.getRandom
-
-    // Number of points
-    val m = 500
-    // Length of actual spectrum
-    val spectrumLen = 40
-
-    val spectrum = dvec((0 until spectrumLen).map(x => 300.0 * exp(-x) max 1e-3))
-    printf("spectrum:%s\n", spectrum)
-
-    val (u, _) = qr(new SparseRowMatrix(m, spectrumLen) :=
-      ((r, c, v) => if (rnd.nextDouble() < 0.2) 0 else rnd.nextDouble() + 5.0))
-
-    // PCA Rotation matrix -- should also be orthonormal.
-    val (tr, _) = qr(Matrices.symmetricUniformView(spectrumLen, spectrumLen, rnd.nextInt) - 10.0)
-
-    val input = (u %*%: diagv(spectrum)) %*% tr.t
-    val drmInput = drmParallelize(m = input, numPartitions = 2)
-
-    // Calculate just first 10 principal factors and reduce dimensionality.
-    // Since we assert just validity of the s-pca, not stochastic error, we bump p parameter to
-    // ensure to zero stochastic error and assert only functional correctness of the method's pca-
-    // specific additions.
-    val k = 10
-
-    // Calculate just first 10 principal factors and reduce dimensionality.
-    var (drmPCA, _, s) = dspca(drmA = drmInput, k = 10, p = spectrumLen, q = 1)
-    // Un-normalized pca data:
-    drmPCA = drmPCA %*% diagv(s)
-
-    val pca = drmPCA.checkpoint(CacheHint.NONE).collect
-
-    // Of course, once we calculated the pca, the spectrum is going to be different since our originally
-    // generated input was not centered. So here, we'd just brute-solve pca to verify
-    val xi = input.colMeans()
-    for (r <- 0 until input.nrow) input(r, ::) -= xi
-    var (pcaControl, _, sControl) = svd(m = input)
-    pcaControl = (pcaControl %*%: diagv(sControl))(::, 0 until k)
-
-    printf("pca:\n%s\n", pca(0 until 10, 0 until 10))
-    printf("pcaControl:\n%s\n", pcaControl(0 until 10, 0 until 10))
-
-    (pca(0 until 10, 0 until 10).norm - pcaControl(0 until 10, 0 until 10).norm).abs should be < 1E-5
-
-  }
-
-  test("dals") {
-
-    val rnd = RandomUtils.getRandom
-
-    // Number of points
-    val m = 350
-    val n = 350
-
-    // Length of actual spectrum
-    val spectrumLen = 40
-
-    // Create singluar values with decay
-    val spectrum = dvec((0 until spectrumLen).map(x => 300.0 * exp(-x) max 1e-3))
-    printf("spectrum:%s\n", spectrum)
-
-    // Create A as an ideal input
-    val inCoreA = (qr(Matrices.symmetricUniformView(m, spectrumLen, 1234))._1 %*%: diagv(spectrum)) %*%
-      qr(Matrices.symmetricUniformView(n, spectrumLen, 2345))._1.t
-    val drmA = drmParallelize(inCoreA, numPartitions = 2)
-
-    // Decompose using ALS
-    val (drmU, drmV, rmse) = dals(drmA = drmA, k = 20).toTuple
-    val inCoreU = drmU.collect
-    val inCoreV = drmV.collect
-
-    val predict = inCoreU %*% inCoreV.t
-
-    printf("Control block:\n%s\n", inCoreA(0 until 3, 0 until 3))
-    printf("ALS factorized approximation block:\n%s\n", predict(0 until 3, 0 until 3))
-
-    val err = (inCoreA - predict).norm
-    printf("norm of residuals %f\n", err)
-    printf("train iteration rmses: %s\n", rmse)
-
-    err should be < 15e-2
-
-  }
-
-}
\ No newline at end of file
diff --git a/community/community-engines/flink-batch/src/test/scala/org/apache/mahout/flinkbindings/standard/NaiveBayesTestSuite.scala b/community/community-engines/flink-batch/src/test/scala/org/apache/mahout/flinkbindings/standard/NaiveBayesTestSuite.scala
deleted file mode 100644
index 0f1d6bc..0000000
--- a/community/community-engines/flink-batch/src/test/scala/org/apache/mahout/flinkbindings/standard/NaiveBayesTestSuite.scala
+++ /dev/null
@@ -1,29 +0,0 @@
-/**
-  * Licensed to the Apache Software Foundation (ASF) under one
-  * or more contributor license agreements. See the NOTICE file
-  * distributed with this work for additional information
-  * regarding copyright ownership. The ASF licenses this file
-  * to you under the Apache License, Version 2.0 (the
-  * "License"); you may not use this file except in compliance
-  * with the License. You may obtain a copy of the License at
-  *
-  * http://www.apache.org/licenses/LICENSE-2.0
-  *
-  * Unless required by applicable law or agreed to in writing,
-  * software distributed under the License is distributed on an
-  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-  * KIND, either express or implied. See the License for the
-  * specific language governing permissions and limitations
-  * under the License.
-  */
-package org.apache.mahout.flinkbindings.standard
-
-import org.apache.mahout.classifier.naivebayes.NBTestBase
-import org.apache.mahout.flinkbindings._
-import org.scalatest.FunSuite
-
-
-class NaiveBayesTestSuite extends FunSuite with DistributedFlinkSuite
-      with NBTestBase {
-
-}
\ No newline at end of file
diff --git a/community/community-engines/flink-batch/src/test/scala/org/apache/mahout/flinkbindings/standard/PreprocessorSuite.scala b/community/community-engines/flink-batch/src/test/scala/org/apache/mahout/flinkbindings/standard/PreprocessorSuite.scala
deleted file mode 100644
index 5e2b4ee..0000000
--- a/community/community-engines/flink-batch/src/test/scala/org/apache/mahout/flinkbindings/standard/PreprocessorSuite.scala
+++ /dev/null
@@ -1,26 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.mahout.flinkbindings.standard
-
-
-import org.apache.mahout.flinkbindings.DistributedFlinkSuite
-import org.apache.mahout.math.algorithms.PreprocessorSuiteBase
-import org.scalatest.FunSuite
-
-class PreprocessorSuite extends FunSuite
-  with DistributedFlinkSuite with PreprocessorSuiteBase
diff --git a/community/community-engines/flink-batch/src/test/scala/org/apache/mahout/flinkbindings/standard/RLikeDrmOpsSuite.scala b/community/community-engines/flink-batch/src/test/scala/org/apache/mahout/flinkbindings/standard/RLikeDrmOpsSuite.scala
deleted file mode 100644
index 8bb1b02..0000000
--- a/community/community-engines/flink-batch/src/test/scala/org/apache/mahout/flinkbindings/standard/RLikeDrmOpsSuite.scala
+++ /dev/null
@@ -1,28 +0,0 @@
-/**
-  * Licensed to the Apache Software Foundation (ASF) under one
-  * or more contributor license agreements. See the NOTICE file
-  * distributed with this work for additional information
-  * regarding copyright ownership. The ASF licenses this file
-  * to you under the Apache License, Version 2.0 (the
-  * "License"); you may not use this file except in compliance
-  * with the License. You may obtain a copy of the License at
-  *
-  * http://www.apache.org/licenses/LICENSE-2.0
-  *
-  * Unless required by applicable law or agreed to in writing,
-  * software distributed under the License is distributed on an
-  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-  * KIND, either express or implied. See the License for the
-  * specific language governing permissions and limitations
-  * under the License.
-  */
-package org.apache.mahout.flinkbindings.standard
-
-import org.apache.mahout.flinkbindings._
-import org.apache.mahout.math.drm._
-import org.scalatest.FunSuite
-
-class RLikeDrmOpsSuite extends FunSuite with DistributedFlinkSuite
-      with RLikeDrmOpsSuiteBase {
-
-}
\ No newline at end of file
diff --git a/community/community-engines/flink-batch/src/test/scala/org/apache/mahout/flinkbindings/standard/RegressionSuite.scala b/community/community-engines/flink-batch/src/test/scala/org/apache/mahout/flinkbindings/standard/RegressionSuite.scala
deleted file mode 100644
index 5cb6183..0000000
--- a/community/community-engines/flink-batch/src/test/scala/org/apache/mahout/flinkbindings/standard/RegressionSuite.scala
+++ /dev/null
@@ -1,27 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.mahout.flinkbindings.standard
-
-
-import org.apache.mahout.flinkbindings.DistributedFlinkSuite
-import org.apache.mahout.math.algorithms.RegressionSuiteBase
-import org.scalatest.FunSuite
-
-class RegressionSuite extends FunSuite
-  with DistributedFlinkSuite with RegressionSuiteBase
-
diff --git a/community/community-engines/flink-batch/src/test/scala/org/apache/mahout/flinkbindings/standard/RegressionTestsSuite.scala b/community/community-engines/flink-batch/src/test/scala/org/apache/mahout/flinkbindings/standard/RegressionTestsSuite.scala
deleted file mode 100644
index 8ddab41..0000000
--- a/community/community-engines/flink-batch/src/test/scala/org/apache/mahout/flinkbindings/standard/RegressionTestsSuite.scala
+++ /dev/null
@@ -1,26 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.mahout.flinkbindings.standard
-
-import org.apache.mahout.flinkbindings.DistributedFlinkSuite
-import org.apache.mahout.math.algorithms.RegressionTestsSuiteBase
-import org.scalatest.FunSuite
-
-class RegressionTestsSuite extends FunSuite
-  with DistributedFlinkSuite with RegressionTestsSuiteBase
-
diff --git a/community/community-engines/h2o/README.md b/community/community-engines/h2o/README.md
deleted file mode 100644
index b072099..0000000
--- a/community/community-engines/h2o/README.md
+++ /dev/null
@@ -1,74 +0,0 @@
-<!--
- Licensed to the Apache Software Foundation (ASF) under one or more
- contributor license agreements.  See the NOTICE file distributed with
- this work for additional information regarding copyright ownership.
- The ASF licenses this file to You under the Apache License, Version 2.0
- (the "License"); you may not use this file except in compliance with
- the License.  You may obtain a copy of the License at
-
-     http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
--->
-
-# Introduction
-
-This document demonstrates the integration between Mahout (http://mahout.apache.org) and H2O (http://www.h2o.ai). The integration provides a H2O backend to the Mahout algebra DSL (similar to the Spark backend.)
-
-## Setup
-
-The integration depends on h2o-core maven artifact. This can either be fetched automatically through sonatype, or can be installed locally from source (run 'gradle install -x test' in http://github.com/0xdata/h2o-dev)
-
-## Test
-
-The integration with H2O can be used in either a local mode (single node) or a clustered mode.
-
-### Simple (single node/local) test
-
-Testing in local mode is pretty straight forward. Just run 'mvn test' as shown below.
-
-    sh:~/mahout$ cd h2o
-    sh:~/mahout/h2o$ mvn test
-    ...
-    ...
-    All tests passed.
-    ...
-    sh:~/mahout/h2o$
-
-### Distributed test
-
-H2O is fundamentally a peer-to-peer system. H2O nodes join together to form a cloud on which high performance distributed math can be executed. Each node joins a cloud of a given name. Multiple clouds can exist on the same network at the same time as long as their names are different. Multiple nodes can exist on the same server as well (even belonging to the same cloud.)
-
-The Mahout H2O integration is fit into this model by having N-1 "worker" nodes and one driver node, all belonging to the same cloud name. The default cloud name used for the integration is "mah2out". Clouds have to be spun up per task/job.
-
-**WARNING**: Some Linux systems have default firewall rules which might block traffic required for the following tests. In order to successfully run the tests you might need to temporarily turn off firewall rules with `sh# iptables -F`
-
-First bring up worker nodes:
-
-    host-1:~/mahout$ ./bin/mahout h2o-node
-    ...
-    .. INFO: Cloud of size 1 formed [/W.X.Y.Z:54321]
-
-Similarly,
-
-    host-2:~/mahout$ ./bin/mahout h2o-node
-    ...
-    .. INFO: Cloud of size 2 formed [/A.B.C.D:54322]
-
-... and so on. For the purpose of testing multiple (even all) instances can be run on the same system too.
-
-The nodes discover each other over a multicast channel and establish consensus with Paxos. Next, start the driver just like running in local mode.
-
-    host-N:~/mahout/h2o$ mvn test
-    ...
-    .. INFO: Cloud of size 3 formed [/E.F.G.H:54323]
-    ...
-    All tests passed.
-    ...
-    host-N:~/mahout/h2o$
-
-The workers have to be restarted when when the driver node terminates (automating this is a future task.)
\ No newline at end of file
diff --git a/community/community-engines/h2o/pom.xml b/community/community-engines/h2o/pom.xml
deleted file mode 100644
index 15e1909..0000000
--- a/community/community-engines/h2o/pom.xml
+++ /dev/null
@@ -1,177 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
- Licensed to the Apache Software Foundation (ASF) under one or more
- contributor license agreements.  See the NOTICE file distributed with
- this work for additional information regarding copyright ownership.
- The ASF licenses this file to You under the Apache License, Version 2.0
- (the "License"); you may not use this file except in compliance with
- the License.  You may obtain a copy of the License at
-
-     http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
--->
-
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
-  <modelVersion>4.0.0</modelVersion>
-
-  <parent>
-    <groupId>org.apache.mahout</groupId>
-    <artifactId>mahout-community-engines</artifactId>
-    <version>14.1-SNAPSHOT</version>
-  </parent>
-
-  <artifactId>mahout-h2o</artifactId>
-  <packaging>jar</packaging>
-
-  <name>-- Mahout H2O Engine (Community)</name>
-  <description>H2O Backend for Mahout DSL</description>
-
-  <build>
-    <plugins>
-      <plugin>
-        <groupId>net.alchim31.maven</groupId>
-        <artifactId>scala-maven-plugin</artifactId>
-        <executions>
-          <!--execution>
-            <id>add-scala-sources</id>
-            <phase>initialize</phase>
-            <goals>
-              <goal>add-source</goal>
-            </goals>
-          </execution-->
-          <execution>
-            <id>scala-compile</id>
-            <!-- Intentionally not using 'compile' as the java code depends on some scala classes -->
-            <phase>process-resources</phase>
-            <goals>
-              <goal>compile</goal>
-            </goals>
-          </execution>
-          <execution>
-            <id>scala-test-compile</id>
-            <phase>test-compile</phase>
-            <goals>
-              <goal>testCompile</goal>
-            </goals>
-          </execution>
-        </executions>
-      </plugin>
-
-      <!--this is what scalatest recommends to do to enable scala tests -->
-      <!-- disable surefire -->
-      <plugin>
-        <groupId>org.apache.maven.plugins</groupId>
-        <artifactId>maven-surefire-plugin</artifactId>
-        <configuration>
-          <skipTests>true</skipTests>
-        </configuration>
-      </plugin>
-
-      <!-- enable scalatest -->
-      <plugin>
-        <groupId>org.scalatest</groupId>
-        <artifactId>scalatest-maven-plugin</artifactId>
-        <executions>
-          <execution>
-            <id>scala-test</id>
-            <goals>
-              <goal>test</goal>
-            </goals>
-          </execution>
-        </executions>
-      </plugin>
-
-      <!-- Change the default configuration of the jar plugin to use a scala classifier to attach the jar. -->
-      <plugin>
-        <groupId>org.apache.maven.plugins</groupId>
-        <artifactId>maven-jar-plugin</artifactId>
-        <version>3.2.0</version>
-        <executions>
-          <execution>
-            <id>default-jar</id>
-            <configuration>
-              <classifier>scala_${scala.compat.version}</classifier>
-            </configuration>
-          </execution>
-        </executions>
-      </plugin>
-
-      <plugin>
-        <groupId>org.apache.maven.plugins</groupId>
-        <artifactId>maven-assembly-plugin</artifactId>
-        <executions>
-          <execution>
-            <id>dependency-reduced</id>
-            <phase>package</phase>
-            <goals>
-              <goal>single</goal>
-            </goals>
-            <configuration>
-              <descriptors>
-                <descriptor>src/main/assembly/dependency-reduced.xml</descriptor>
-              </descriptors>
-            </configuration>
-          </execution>
-        </executions>
-      </plugin>
-    </plugins>
-  </build>
-
-  <dependencies>
-    <!-- for MatrixWritable and VectorWritable -->
-    <dependency>
-      <groupId>org.apache.mahout</groupId>
-      <artifactId>mahout-hdfs</artifactId>
-      <version>14.1-SNAPSHOT</version>
-    </dependency>
-
-    <dependency>
-      <groupId>org.apache.mahout</groupId>
-      <artifactId>mahout-core</artifactId>
-      <version>14.1-SNAPSHOT</version>
-      <classifier>scala_${scala.compat.version}</classifier>
-    </dependency>
-
-    <!--  3rd-party -->
-
-    <!-- H2O -->
-
-    <dependency>
-      <groupId>ai.h2o</groupId>
-      <artifactId>h2o-core</artifactId>
-      <exclusions>
-        <exclusion>
-          <groupId>org.apache.hadoop</groupId>
-          <artifactId>hadoop-common</artifactId>
-        </exclusion>
-      </exclusions>
-    </dependency>
-
-    <!-- scala stuff -->
-    <dependency>
-      <groupId>org.scala-lang</groupId>
-      <artifactId>scala-library</artifactId>
-    </dependency>
-
-    <dependency>
-      <groupId>org.scalatest</groupId>
-      <artifactId>scalatest_${scala.compat.version}</artifactId>
-      <scope>test</scope>
-    </dependency>
-
-    <dependency>
-      <groupId>org.apache.mahout</groupId>
-      <artifactId>mahout-core</artifactId>
-      <version>14.1-SNAPSHOT</version>
-      <classifier>test_scala_${scala.compat.version}</classifier>
-      <scope>test</scope>
-    </dependency>
-  </dependencies>
-
-</project>
diff --git a/community/community-engines/h2o/src/main/assembly/dependency-reduced.xml b/community/community-engines/h2o/src/main/assembly/dependency-reduced.xml
deleted file mode 100644
index 0636f1d..0000000
--- a/community/community-engines/h2o/src/main/assembly/dependency-reduced.xml
+++ /dev/null
@@ -1,44 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Licensed to the Apache Software Foundation (ASF) under one or more
- contributor license agreements.  See the NOTICE file distributed with
- this work for additional information regarding copyright ownership.
- The ASF licenses this file to You under the Apache License, Version 2.0
- (the "License"); you may not use this file except in compliance with
- the License.  You may obtain a copy of the License at
-     http://www.apache.org/licenses/LICENSE-2.0
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
--->
-<assembly
-  xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0"
-  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-  xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0
-  http://maven.apache.org/xsd/assembly-1.1.0.xsd">
-  <id>dependency-reduced</id>
-  <formats>
-    <format>jar</format>
-  </formats>
-  <includeBaseDirectory>false</includeBaseDirectory>
-  <dependencySets>
-    <dependencySet>
-      <unpack>true</unpack>
-      <unpackOptions>
-      <!-- MAHOUT-1126 -->
-      <excludes>
-         <exclude>META-INF/LICENSE</exclude>
-      </excludes>
-      </unpackOptions>
-      <scope>runtime</scope>
-      <outputDirectory>/</outputDirectory>
-      <useTransitiveFiltering>true</useTransitiveFiltering>
-      <includes>
-        <include>ai.h2o:h2o-core</include>
-        <include>org.scala-lang:scala-library</include>
-      </includes>
-    </dependencySet>
-  </dependencySets>
-</assembly>
\ No newline at end of file
diff --git a/community/community-engines/h2o/src/main/java/org/apache/mahout/h2obindings/H2OBlockMatrix.java b/community/community-engines/h2o/src/main/java/org/apache/mahout/h2obindings/H2OBlockMatrix.java
deleted file mode 100644
index 378f7b6..0000000
--- a/community/community-engines/h2o/src/main/java/org/apache/mahout/h2obindings/H2OBlockMatrix.java
+++ /dev/null
@@ -1,134 +0,0 @@
-/*
- *  Licensed to the Apache Software Foundation (ASF) under one or more
- *  contributor license agreements.  See the NOTICE file distributed with
- *  this work for additional information regarding copyright ownership.
- *  The ASF licenses this file to You under the Apache License, Version 2.0
- *  (the "License"); you may not use this file except in compliance with
- *  the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing, software
- *  distributed under the License is distributed on an "AS IS" BASIS,
- *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- *  See the License for the specific language governing permissions and
- *  limitations under the License.
- */
-
-package org.apache.mahout.h2obindings;
-
-import org.apache.mahout.math.Matrix;
-import org.apache.mahout.math.Vector;
-import org.apache.mahout.math.AbstractMatrix;
-import org.apache.mahout.math.DenseMatrix;
-import org.apache.mahout.math.SparseMatrix;
-import org.apache.mahout.math.flavor.MatrixFlavor;
-
-import water.fvec.Chunk;
-
-/**
- * A Matrix implementation to represent a vertical Block of DRM.
- *
- * Creation of the matrix is an O(1) operation with negligible
- * overhead, and will remain so as long as the matrix is only
- * read from (no modifications).
- *
- * On the first modification, create a copy on write Matrix and
- * all further operations happen on this cow matrix.
- *
- * The benefit is, mapBlock() closures which never modify the
- * input matrix save on the copy overhead.
- */
-public class H2OBlockMatrix extends AbstractMatrix {
-  /** Backing chunks which store the original matrix data */
-  private Chunk chks[];
-  /** Copy on write matrix created on demand when original matrix is modified */
-  private Matrix cow;
-
-  /** Class constructor. */
-  public H2OBlockMatrix(Chunk chks[]) {
-    super(chks[0].len(), chks.length);
-    this.chks = chks;
-  }
-
-  /**
-   * Internal method to create the copy on write matrix.
-   *
-   * Once created, all further operations are performed on the CoW matrix
-   */
-  private void cow() {
-    if (cow != null) {
-      return;
-    }
-
-    if (chks[0].isSparse()) {
-      cow = new SparseMatrix(chks[0].len(), chks.length);
-    } else {
-      cow = new DenseMatrix(chks[0].len(), chks.length);
-    }
-
-    for (int c = 0; c < chks.length; c++) {
-      for (int r = 0; r < chks[0].len(); r++) {
-        cow.setQuick(r, c, chks[c].atd(r));
-      }
-    }
-  }
-
-  @Override
-  public void setQuick(int row, int col, double val) {
-    cow();
-    cow.setQuick(row, col, val);
-  }
-
-  @Override
-  public Matrix like(int nrow, int ncol) {
-    if (chks[0].isSparse()) {
-      return new SparseMatrix(nrow, ncol);
-    } else {
-      return new DenseMatrix(nrow, ncol);
-    }
-  }
-
-  @Override
-  public Matrix like() {
-    if (chks[0].isSparse()) {
-      return new SparseMatrix(rowSize(), columnSize());
-    } else {
-      return new DenseMatrix(rowSize(), columnSize());
-    }
-  }
-
-  @Override
-  public double getQuick(int row, int col) {
-    if (cow != null) {
-      return cow.getQuick(row, col);
-    } else {
-      return chks[col].atd(row);
-    }
-  }
-
-  @Override
-  public Matrix assignRow(int row, Vector v) {
-    cow();
-    cow.assignRow(row, v);
-    return cow;
-  }
-
-  @Override
-  public Matrix assignColumn(int col, Vector v) {
-    cow();
-    cow.assignColumn(col, v);
-    return cow;
-  }
-
-  @Override
-  public MatrixFlavor getFlavor() {
-    if (cow != null) {
-      return cow.getFlavor();
-    } else if (chks[0].isSparse()) {
-      return MatrixFlavor.SPARSELIKE;
-    } else {
-      return MatrixFlavor.DENSELIKE;
-    }
-  }
-}
diff --git a/community/community-engines/h2o/src/main/java/org/apache/mahout/h2obindings/H2OContext.java b/community/community-engines/h2o/src/main/java/org/apache/mahout/h2obindings/H2OContext.java
deleted file mode 100644
index 96a2f8f..0000000
--- a/community/community-engines/h2o/src/main/java/org/apache/mahout/h2obindings/H2OContext.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
- *  Licensed to the Apache Software Foundation (ASF) under one or more
- *  contributor license agreements.  See the NOTICE file distributed with
- *  this work for additional information regarding copyright ownership.
- *  The ASF licenses this file to You under the Apache License, Version 2.0
- *  (the "License"); you may not use this file except in compliance with
- *  the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing, software
- *  distributed under the License is distributed on an "AS IS" BASIS,
- *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- *  See the License for the specific language governing permissions and
- *  limitations under the License.
- */
-
-package org.apache.mahout.h2obindings;
-
-import water.H2O;
-
-/**
- * Context to an H2O Cloud.
- */
-public class H2OContext {
-  /**
-   * Class constructor.
-   *
-   * @param masterURL The cloud name (name of cluster) to which all the H2O
-   *                   worker nodes "join into". This is not a hostname or IP
-   *                   address of a server, but a string which all cluster
-   *                   members agree on.
-   */
-  public H2OContext(String masterURL) {
-    H2O.main(new String[]{"-md5skip", "-name", masterURL});
-    H2O.joinOthers();
-  }
-}
diff --git a/community/community-engines/h2o/src/main/java/org/apache/mahout/h2obindings/H2OHdfs.java b/community/community-engines/h2o/src/main/java/org/apache/mahout/h2obindings/H2OHdfs.java
deleted file mode 100644
index c0f1ee7..0000000
--- a/community/community-engines/h2o/src/main/java/org/apache/mahout/h2obindings/H2OHdfs.java
+++ /dev/null
@@ -1,245 +0,0 @@
-/*
- *  Licensed to the Apache Software Foundation (ASF) under one or more
- *  contributor license agreements.  See the NOTICE file distributed with
- *  this work for additional information regarding copyright ownership.
- *  The ASF licenses this file to You under the Apache License, Version 2.0
- *  (the "License"); you may not use this file except in compliance with
- *  the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing, software
- *  distributed under the License is distributed on an "AS IS" BASIS,
- *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- *  See the License for the specific language governing permissions and
- *  limitations under the License.
- */
-
-package org.apache.mahout.h2obindings;
-
-import org.apache.hadoop.conf.Configuration;
-import org.apache.hadoop.fs.FSDataInputStream;
-import org.apache.hadoop.fs.FileSystem;
-import org.apache.hadoop.fs.Path;
-import org.apache.hadoop.io.IOUtils;
-import org.apache.hadoop.io.IntWritable;
-import org.apache.hadoop.io.LongWritable;
-import org.apache.hadoop.io.SequenceFile;
-import org.apache.hadoop.io.Text;
-import org.apache.hadoop.io.Writable;
-import org.apache.hadoop.util.ReflectionUtils;
-import org.apache.mahout.h2obindings.drm.H2ODrm;
-import org.apache.mahout.math.DenseVector;
-import org.apache.mahout.math.SequentialAccessSparseVector;
-import org.apache.mahout.math.Vector;
-import org.apache.mahout.math.VectorWritable;
-import water.Futures;
-import water.fvec.Frame;
-import water.fvec.Vec;
-import water.parser.ValueString;
-import water.util.FrameUtils;
-
-import java.io.File;
-import java.io.IOException;
-import java.net.URI;
-
-/**
- * SequenceFile I/O class (on HDFS)
- */
-public class H2OHdfs {
-  /**
-   * Predicate to check if a given filename is a SequenceFile.
-   *
-   * Inspect the first three bytes to determine the format of the file.
-   *
-   * @param filename Name of the file to check.
-   * @return True if file is of SequenceFile format.
-   */
-  public static boolean isSeqfile(String filename) {
-    try {
-      Configuration conf = new Configuration();
... 489637 lines suppressed ...