Marina Noskova
9d9a5bbbfd
Fixed documentation.
2016-02-24 13:33:43 +03:00
Marina Noskova
f3c4a6aab8
Rename parameters lambda, gamma0 and c.
2016-02-24 13:22:07 +03:00
Marina Noskova
02cd8cf039
Deleted illegal type values.
2016-02-15 15:09:59 +03:00
Marina Noskova
ff54952769
Corrected spelling mistakes
2016-02-15 14:35:36 +03:00
Maksim Shabunin
54abb83c82
ml: moved getTestSamples implementation to src
2016-02-12 12:32:26 +03:00
ahb
15793b1301
add TestData::getTestSamples()
2016-02-12 12:11:10 +03:00
Marina Noskova
5496dedd6a
Fixed warnings.
2016-02-10 19:46:24 +03:00
Marina Noskova
0307dd19fd
Minor fix in declaration of SVMSGD::setOptimalParameters
2016-02-10 18:21:45 +03:00
Marina Noskova
617dd5db5b
Fixed doc/opencv.bib
2016-02-10 17:57:36 +03:00
Marina Noskova
c522172367
Fixed small bug in SVMSGD::clear().
2016-02-10 16:59:12 +03:00
Marina Noskova
05353a1492
Removed trailing whitespaces
2016-02-10 16:59:12 +03:00
Marina Noskova
41c0a38344
Fixed test samples for tests with different borders
...
Added new test (separating two points)
2016-02-10 16:59:12 +03:00
Marina Noskova
bfdca05f25
Added margin type, added tests with different scales of features.
...
Also fixed documentation, refactored sample.
2016-02-10 16:59:12 +03:00
Marina Noskova
acd74037b3
Increasing the dimension of features space in the SVMSGD::train function.
2016-02-10 16:59:11 +03:00
Marina Noskova
40bf97c6d1
Refactored SVMSGD class
2016-02-10 16:56:14 +03:00
joao.faro
a2f0963d66
SVMSGD class added
2016-02-10 16:53:15 +03:00
Alexander Alekhin
df89e76fb1
Merge pull request #5922 from DarwinsBuddy:fix_no_py_load_svm_bug
2016-01-14 14:44:27 +00:00
Alexander Alekhin
cb0b2bd1af
Merge pull request #5965 from amroamroamro:fix_concentric_spheres
2016-01-14 12:09:25 +00:00
Amro
47cdb041f2
fix assignment of class labels
...
by using the indices from the sorted distance vector of pairs.
2016-01-14 02:56:34 +02:00
Amro
542f2b2e3c
clean up code for train and predict methods of LR
2016-01-13 20:47:07 +02:00
Amro
e67178c696
fix LR predict with raw output in 2-class case
...
In case of binary class, pred_m is initialized as zero vector and later
returned when raw outputs are requested, but it is never filled.
2016-01-13 19:48:21 +02:00
Christoph Spörk
3f172731b2
added wrapped load function for python as suggested by gat3way
2016-01-11 10:59:15 +01:00
Christoph Spörk
66eda72f66
fixed a doxygen issue
2016-01-07 08:19:06 +01:00
Christoph Spörk
6c8bc6a25b
fixed ABI incompatibilities as proposed by alalek
...
related to issue 4969
fixes issue 5891
fixes issue 5922
2016-01-07 08:00:01 +01:00
Christoph Spörk
a7aa198b4c
fixing issue #4969 of Itseez/opencv.
...
Someone forgot to wrap the load function for SVMs in the
corresponding ml python module. Fixed that.
2016-01-04 15:47:26 +01:00
berak
5afd0e211e
ml: fix NormalBayesClassifier bulk prediction( #5911 )
2016-01-04 11:47:08 +01:00
Philip
1ba2286c6d
fix uninitialized matrix in EM::predict fixes #5443
...
fixes #5443
2015-12-23 11:19:48 +01:00
Ishank gulati
9636b5e821
reduce k_fold parameter
2015-12-22 15:47:11 +05:30
Dikay900
4f3b58d1e7
fix reshape call not being an inplace method
...
fixes #5853 #4740
2015-12-21 21:10:35 +01:00
Vadim Pisarevsky
e0395a79ec
Merge pull request #5616 from afriesen:lr_predict
2015-12-11 12:22:56 +00:00
Vadim Pisarevsky
7a7b0bcfcb
fixed the upper boundary when calling checkRange (thanks to alalek)
2015-12-10 20:17:17 +03:00
Deanna Hood
0d706f6796
Return uncompressed support vectors for getSupportVectors on linear SVM (Bug #4096 )
2015-12-10 18:31:02 +03:00
Vadim Pisarevsky
544990e377
couple of small fixes in rtrees variable importance calculation
2015-12-10 18:13:54 +03:00
Vadim Pisarevsky
fda17273de
applying patch by rxtsolar: https://github.com/Itseez/opencv/pull/5422 for the master branch (even though it's actually not that important here)
2015-12-10 18:10:27 +03:00
niederb
d8e3971e7f
Fixed variable importance in rtrees
2015-12-10 18:09:15 +03:00
Tian Zhi
f0434d60b0
fixed the type inconsistent with document.
...
Document say probs will have CV_64F type. But in effect, it has CV_32F type.
http://docs.opencv.org/3.0.0/d1/dfb/classcv_1_1ml_1_1EM.html#a2ea7da92a75bc7a7d665c241f547b9b9
2015-11-12 02:54:18 +08:00
Vadim Pisarevsky
18f4e55692
Merge pull request #5472 from StevenPuttemans:remove_unexisting_function
2015-11-10 16:14:43 +00:00
Abe Friesen
9c6ff4d955
- LogisticRegressionImpl::predict() was changed to return the predicted value and to only write to the OutputArray results if specified (no longer segfaults).
...
- Refactored batch and mini_batch training to use a common gradient computation function (removed duplicate code).
- Altered the cost computation so that NAN is not computed unnecessarily.
- Greatly simplified (and sped up) the code that appends a column of 1s to the data.
- Minor code cleanup.
Removed unused variables.
Added cast to float to remove warning
2015-11-02 17:49:06 -08:00
Alexander Alekhin
dfec99691b
Merge pull request #5370 from berak:fix_svm_autoTrain
2015-10-26 10:47:29 +00:00
Alexander Alekhin
1648e9292c
Merge pull request #5431 from MiguelAlgaba:em_one_cluster
2015-10-19 15:27:35 +00:00
Amro
13a0a37e63
fix randMVNormal in ML ( #5469 )
...
Fix the failed assertion by replacing the GEMM call.
Also random numbers are generated from normal distribution ~N(0,1),
instead of uniform distribution ~U(0,1).
2015-10-11 01:54:11 +03:00
StevenPuttemans
47db20eced
removing unexisting functionality in ML header
2015-10-08 11:10:05 +02:00
Miguel Algaba
b71a27b96c
Assert fix: allow one cluster as valid parameter
2015-10-01 16:45:59 +02:00
berak
74fc9acdd1
initialize temp_train_samples in SVM::autoTrain
...
add smoke test
2015-09-23 11:08:48 +02:00
Vadim Pisarevsky
c9ccf3b55d
Merge pull request #5346 from art-programmer:art-programmer-patch-1
2015-09-21 12:06:46 +00:00
art-programmer
e0ef293645
Update em.cpp
...
Fix a bug. When reading from a saved model, function decomposeCovs() will be called. And if covMatType is COV_MAT_DIAGONAL, covsEigenValues is computed using SVD and eigen values are sorted so that the order of eigen values is not preserved. This would lead to different result when calling function predict2. This issues is discussed here: http://stackoverflow.com/questions/23485982/got-different-empredict-results-after-emread-saved-model-in-opencv .
2015-09-14 19:35:53 -05:00
Ilya Lavrenov
ee2008abe8
fixed "Conditional jump or move depends on uninitialised value(s)" in GBD
2015-09-13 12:36:57 +02:00
Ilya Lavrenov
1d77d697ef
fixed memory leak in GBTrees
2015-09-13 12:15:30 +02:00
Vadim Pisarevsky
32c386786e
Merge pull request #5294 from LorenaGdL:master
2015-09-09 13:41:39 +00:00
Lorena García
4e7bd86fad
TrainData doc update
...
Update docs according to PR #5127
2015-09-03 05:52:04 +02:00
Lorena García
c545857ea6
Indent fix
2015-08-04 16:50:55 +02:00
Lorena García
4cd78bc7ad
Whitespace error
2015-08-04 16:45:39 +02:00
Lorena García
fe62243805
Whitespace error
2015-08-04 16:37:41 +02:00
Lorena García
2cb47b4191
Update data.cpp
...
Update to allow loading data from a .csv file that only contains training samples values and not the associated responses. To allow this behavior, function must be called with parameters ResponsesStartIdx <= -2 and ResponsesEndIdx = 0
2015-08-04 15:58:24 +02:00
berak
d9148ea604
Update ml.hpp
...
misplaced CV_WRAP statement lead to not exposing EM::getCovs() to python/java/matlab wrappers
add a CV_OUT to return the covs properly
2015-07-25 08:22:39 +02:00
Jie Yang
2ba0d31785
Fix SVM::trainAuto (Bug #4464 )
...
Fix SVM::trainAuto (Bug #4464 )
2015-07-06 01:20:26 +09:30
berak
b29e473c21
fix plausability check, #issue 4429
2015-07-01 15:32:37 +02:00
Maksim Shabunin
b95769333c
Fixed ANN_MLP dw initialization when moment is not 0
2015-05-13 16:56:34 +03:00
Maksim Shabunin
c137ba53a0
Wrap ANN_MLP class into Python
2015-05-06 15:21:23 +03:00
Vadim Pisarevsky
a69b435c92
Merge pull request #3909 from Nuzhny007:master
2015-04-21 14:02:59 +00:00
Maksim Shabunin
cb00c7036f
Fix cache error during SVM train
2015-04-15 15:46:07 +03:00
Сергей Нужный
4a65f3cee2
Squashed commit of the following:
...
commit 5c379aa1b8
Merge: e800800
3646967
Author: Сергей Нужный <snuzhny@stc-spb.ru>
Date: Wed Apr 8 12:44:46 2015 +0300
Merge branch 'master' of https://github.com/Nuzhny007/opencv
commit e800800bec
Author: Сергей Нужный <snuzhny@stc-spb.ru>
Date: Wed Apr 8 12:43:38 2015 +0300
Squashed commit of the following:
commit 3646967deb
Author: Сергей Нужный <snuzhny@stc-spb.ru>
Date: Tue Apr 7 15:48:30 2015 +0300
Fix bug in SVM::trainAuto
commit 0c24ccf538
Author: Сергей Нужный <snuzhny@stc-spb.ru>
Date: Tue Apr 7 15:43:59 2015 +0300
Revert "Fix bug in SVM::trainAuto"
This reverts commit 225da0226e
.
commit 225da0226e
Author: Сергей Нужный <snuzhny@stc-spb.ru>
Date: Tue Apr 7 15:09:47 2015 +0300
Fix bug in SVM::trainAuto
commit 3646967deb
Author: Сергей Нужный <snuzhny@stc-spb.ru>
Date: Tue Apr 7 15:48:30 2015 +0300
Fix bug in SVM::trainAuto
commit 0c24ccf538
Author: Сергей Нужный <snuzhny@stc-spb.ru>
Date: Tue Apr 7 15:43:59 2015 +0300
Revert "Fix bug in SVM::trainAuto"
This reverts commit 225da0226e
.
commit 225da0226e
Author: Сергей Нужный <snuzhny@stc-spb.ru>
Date: Tue Apr 7 15:09:47 2015 +0300
Fix bug in SVM::trainAuto
2015-04-08 12:51:57 +03:00
Vadim Pisarevsky
052593c760
1. Input/OutputArray optimizations;
...
2. Algorithm::load/save added (moved from StatModel)
3. copyrights updated; added copyright/licensing info for ffmpeg
4. some warnings from Xcode 6.x are fixed
2015-04-07 16:44:26 +03:00
Sancho McCann
6593422c05
Bugfix: #4030 SVM auto-training.
2015-04-01 20:44:51 +00:00
Vadim Pisarevsky
d7cb99254e
Merge pull request #3858 from MSOpenTech:fix-ml-test
2015-03-24 15:09:53 +00:00
Evgeny Agafonchikov
91bd7df8c1
Fixing invalid opencv_test_ml calls
2015-03-20 17:49:03 +03:00
Maksim Shabunin
9f08310307
Disabled TrainData::getNormCatValues wrapping due to pointer in parameters
2015-03-19 15:45:34 +03:00
Maksim Shabunin
5709ec85d7
Disabled missing python method for static ml function
2015-03-19 15:11:49 +03:00
Maksim Shabunin
5247eacc3c
Add python and java support for ml module
2015-03-19 13:22:30 +03:00
Maksim Shabunin
7335a40a61
Replaced CV_PURE_PROPERTY macros with corresponding code
2015-03-18 17:23:42 +03:00
ippei ito
518fd59a10
fixed whitespace error
2015-03-12 01:09:15 +09:00
ippei ito
49b38fe793
Fixed compile error build with VisualStudio2013 on windows.
...
REG_NONE defined in ml.hpp conflicts with defined in Winnt.h
2015-03-12 00:32:17 +09:00
Maksim Shabunin
79e8f0680c
Updated ml module interfaces and documentation
2015-02-17 11:46:14 +03:00
Maksim Shabunin
c85197da55
Fixed allocated vector size in ML ANN algorithm
...
- updated return value of points_classifier sample
2015-02-03 18:16:20 +03:00
Maksim Shabunin
53c9460454
Reorganized ML module documentation
...
- fixed one BiB record
- moved algorithms overview to separate page
- added docs for some enumerations
- fixed some small documentation errors
2015-01-23 23:43:06 +03:00
Maksim Shabunin
38d37d2b00
Fixed uninitialized memory usage in ANN_MLP
2014-12-31 12:16:26 +03:00
Maksim Shabunin
d004ee58c5
Support loading old models in ML module
...
- added test for loading legacy files
- added version to new written models
- fixed loading of several fields in some models
- added generation of new fields from old data
2014-12-31 12:16:25 +03:00
Vadim Pisarevsky
1c8493fb0d
Merge pull request #3549 from mshabunin:sphinx-doc-remove
2014-12-31 09:14:22 +00:00
Julien Nabet
2d5e3b57ea
Fix cppcheck reports warnings:
...
(performance) Possible inefficient checking for 'lmap' emptiness
(warning) Assignment of function parameter has no effect outside the function. Did you forget dereferencing it?
(style) Array index '<xxx>' is used before limits check
2014-12-27 10:54:34 +01:00
Maksim Shabunin
d01bedbc61
Removed Sphinx documentation files
2014-12-26 19:12:19 +03:00
TobyWanKenobi
b35f5d115f
Removed "FORMAT_XML" to generalize format
...
Removed the "FileStorage::FORMAT_XML" to generalize format of the String
model.
2014-12-08 09:21:55 +01:00
TobyWanKenobi
f54b80d2c8
Re-edition of documentation
...
Re-edited the documentation again.
2014-12-03 17:13:11 +01:00
TobyWanKenobi
b3bba3476d
Re-editing Documentation
...
Attempting to re-editing the documentation, to satisfy buildbot error
status.
2014-12-03 15:54:25 +01:00
TobyWanKenobi
270af2ca79
Changing tabs to spaces.
...
Edited previous code to change tabs into spaces.
2014-12-03 15:40:12 +01:00
TobyWanKenobi
a1e04c98aa
Add method in StatModel class, to load from String
...
Added a method "loadFromString" which is based on the "load" one. It
allow to directly pass the XML string which can be usefull and faster
when you have a huge file in a variable.
2014-12-02 15:15:06 +01:00
Maksim Shabunin
03e213ccae
Doxygen documentation: BiB references and fixes
2014-12-01 15:50:55 +03:00
Maksim Shabunin
1523fdcc1c
Doxygen documentation: more fixes and cleanups
2014-12-01 15:50:36 +03:00
Maksim Shabunin
8e9ea0e3d1
Doxygen doucmentation: ml module
2014-12-01 15:47:13 +03:00
bartaandras
21227ba092
Fixed calc_output_scale with NO_OUTPUT_SCALE flag set.
2014-11-04 11:35:45 +01:00
Vadim Pisarevsky
b37a641cc9
fixed bug in automatic SVM training
2014-10-18 20:53:39 +04:00
Benoit Seguin
450734cc32
Correction of the integer data treated as floating point data bug, already corrected in the 2.4 branch.
2014-09-23 14:03:20 +02:00
Vadim Pisarevsky
4057e27539
Merge pull request #3126 from avdmitry:move_KDTree_to_ml
2014-09-14 18:57:23 +00:00
Dmitriy Anisimov
a6b29be55b
minor change: moved algorithm type to the end of params
2014-09-13 15:06:07 +04:00
Dmitriy Anisimov
dfaf75f502
moving algorithm type to param
2014-09-06 09:29:32 +04:00
Dmitriy Anisimov
5f3ee657ce
removed kdtree declaration from interface
2014-08-31 21:39:47 +04:00
Dmitriy Anisimov
9ddb23e025
first implementation KNearest wrapper on KDTree
2014-08-23 18:41:32 +04:00
Dmitriy Anisimov
37b1a7560c
first version of moving KDTree from core to ml
2014-08-18 22:40:31 +04:00
Maksim Shabunin
108caae216
Modified logistic regression module according to comments
...
- Reworked documentation to reflect actual code
- Removed some unused variables
- Removed unnecessary 'cv::' modifiers
2014-08-18 19:13:59 +04:00
Maksim Shabunin
4667e18831
Updated logistic regression example
...
- Extracted common operations to separate functions.
- Activated first parameters set.
- Some output formatting.
- Fixed loop break condition in mini_batch_gradient function.
2014-08-18 19:06:58 +04:00
Maksim Shabunin
3e26086f82
Reworked ML logistic regression implementation, initial version
2014-08-18 19:06:58 +04:00
Maksim Shabunin
71770eb790
Fixed ML module build after merge
2014-08-18 19:06:58 +04:00
Rahul Kavi
a23836231f
fixed warnings in type conversions
...
fixed warnings in type conversions from size_t to int (in getting size of number of unique classes in a training problem).
2014-08-18 19:06:58 +04:00
Rahul Kavi
d20b2a5a97
removed extra comments in train method
2014-08-18 19:06:58 +04:00
Rahul Kavi
ae02ecec60
removed a couple of unnecessary comments in Logistic Regression training method
2014-08-18 19:06:58 +04:00
Rahul Kavi
f20db35b78
fixed logistic regression documentation warnings
2014-08-18 19:06:58 +04:00
Rahul Kavi
21de04b4a2
fixed default constructor for LogisticRegression class declaration
2014-08-18 19:06:58 +04:00
Rahul Kavi
65eb52a247
removed default value from LogisticRegression constructor function definition
2014-08-18 19:06:57 +04:00
Rahul Kavi
e7f14f3d0e
fixed missing semicolon in logistic regression documentation
2014-08-18 19:06:57 +04:00
Rahul Kavi
3622de2621
updated mini_batch_size description for LogisticRegressionParams in documentation
2014-08-18 19:06:57 +04:00
Rahul Kavi
e4ef0e0ca8
fixed indentation in logistic regression documentation
2014-08-18 19:06:57 +04:00
Rahul Kavi
7c97dbc196
fixed indentation in logistic regression documentation
2014-08-18 19:06:57 +04:00
Rahul Kavi
aa35835cfc
fixed white space in logistic regression prototype
2014-08-18 19:06:57 +04:00
Rahul Kavi
8995921cc5
fixed white space in logistic regression classifier
2014-08-18 19:06:57 +04:00
Rahul Kavi
a9df50eefc
updated test for logistic regression
2014-08-18 19:06:57 +04:00
Rahul Kavi
b3b4e83aed
updated logistic regression definition
2014-08-18 19:06:57 +04:00
Rahul Kavi
95ea09c3dc
updated prototype for logistic regression classifier
2014-08-18 19:06:57 +04:00
Rahul Kavi
bf2ee3c58a
updated prototype for logistic regression classifier
2014-08-18 19:06:52 +04:00
Rahul Kavi
3a6deb3ed3
updated documentation to reflect new api changes for logistic regression
2014-08-18 19:06:52 +04:00
Rahul Kavi
af88f0c067
updated documentation to do reflect changes to logistic regression class
2014-08-18 19:06:52 +04:00
Rahul Kavi
1652b2a443
fixed trailing whitespaces in LogisticRegression code.
2014-08-18 19:06:52 +04:00
Rahul Kavi
5bb43f69ab
removed trailing whitespaces from predict function
2014-08-18 19:06:52 +04:00
Rahul Kavi
50031ffb15
removed trailing whitespaces from updated logistic regression definition
2014-08-18 19:06:52 +04:00
Rahul Kavi
78f3b0ad1f
removed unnecessary semicolon in LogisticRegression class documentation
2014-08-18 19:06:52 +04:00
Rahul Kavi
56d715b091
fixed typedef for LogisticRegression. Updated LogisticRegression prototype with newer C++ API
2014-08-18 19:06:52 +04:00
Rahul Kavi
e4a90c19cc
updated documentation to reflect newer changes to LogisticRegression class
2014-08-18 19:06:48 +04:00
Rahul Kavi
64aaa6e1ae
updated test for logistic regression after changes to LogisticRegression class
2014-08-18 19:06:48 +04:00
Rahul Kavi
d5ad4f3255
added updated logistic regression prototype with newer C++ API
2014-08-18 19:06:48 +04:00
Rahul Kavi
0e13f33193
rewrote the code to update API, removed inheritance from CvStatModel.
2014-08-18 19:06:48 +04:00
Rahul Kavi
6c74439d56
fixed trailing white-space in logistic regression class
2014-08-18 19:06:48 +04:00
Rahul Kavi
6ae43a2243
added logistic regression classifier
2014-08-18 19:06:48 +04:00
Rahul Kavi
fcfeb2451b
added logistic regression prototype
2014-08-18 19:06:48 +04:00
Rahul Kavi
3039ed7682
added test for logistic regression
2014-08-18 19:06:36 +04:00
Rahul Kavi
3bf6c3c2aa
added documentation for logistic regression classifier
2014-08-18 19:06:36 +04:00
Rahul Kavi
b9902f39b7
added reference to logistic regression document
2014-08-18 19:06:36 +04:00
Adil Ibragimov
8a4a1bb018
Several type of formal refactoring:
...
1. someMatrix.data -> someMatrix.prt()
2. someMatrix.data + someMatrix.step * lineIndex -> someMatrix.ptr( lineIndex )
3. (SomeType*) someMatrix.data -> someMatrix.ptr<SomeType>()
4. someMatrix.data -> !someMatrix.empty() ( or !someMatrix.data -> someMatrix.empty() ) in logical expressions
2014-08-13 15:21:35 +04:00
Vadim Pisarevsky
05e7c29de5
fixed various warnings and obvious errors reported by clang compiler and the coverity tool.
2014-08-10 00:10:05 +04:00
Vadim Pisarevsky
222f8a3d5e
hopefully fixed test failure on Linux
2014-08-04 01:16:45 +04:00
Vadim Pisarevsky
24b01a8e4f
continuing to debug boost and fix MSVC compile errors
2014-08-03 21:21:11 +04:00
Vadim Pisarevsky
98a1181240
fixed the condition
2014-08-03 13:15:43 +04:00
Vadim Pisarevsky
79b593d8d8
more fixes and more debugging code
2014-08-03 13:08:03 +04:00
Vadim Pisarevsky
eeb786fcfd
fixed compile warnings from MSVC; fixed warnings in Python bindings; added some debugging code
2014-08-03 12:46:28 +04:00
Vadim Pisarevsky
8e9d1d9fe6
temporarily disabled java bindings for ml; hopefully fixed warnings etc.
2014-08-03 04:28:20 +04:00
Vadim Pisarevsky
2520e335d1
removed many extra whitespaces; fixed 1 warning
2014-08-03 03:08:25 +04:00
Vadim Pisarevsky
28ca6ac05e
fixed building html docs
2014-08-03 02:34:47 +04:00
Vadim Pisarevsky
c6593d02a6
updated docs
2014-08-03 01:41:30 +04:00
Vadim Pisarevsky
c20ff6ce19
made everything compile and even run somehow
2014-08-03 01:41:09 +04:00
Vadim Pisarevsky
10b60f8d16
continuing refactoring ml samples; added "max vote" response to ANN_MLP. Probably, should make it in less hacky way
2014-07-31 14:12:10 +04:00
Vadim Pisarevsky
223cdcd0ee
fixed compilation of some samples; fixed ANN_MLP::predict
2014-07-30 22:53:46 +04:00
Vadim Pisarevsky
ba3783d205
initial commit; ml has been refactored; it compiles and the tests run well; some other modules, apps and samples do not compile; to be fixed
2014-07-29 23:54:23 +04:00
Roman Donchenko
33087f9eaa
Merge remote-tracking branch 'origin/2.4' into merge-2.4
2014-06-02 13:43:28 +04:00