Commit Graph

11813 Commits

Author SHA1 Message Date
Maksim Shabunin
451972f3cf Added ARM implementation in cvRound function
- note: uses VFPv3 instructions
- also added overloaded cvRound variants with float and int parameters
- thanks to Marina Kolpakova from Itseez for idea
- thanks to developers from #llvm IRC channel for help with inline asm
2015-03-06 16:14:37 +03:00
StevenPuttemans
cef2cf2852 fixing locale settings - making it universal 2015-03-06 13:13:53 +01:00
Vadim Pisarevsky
5d8a1bf813 explained reason why IPP is disabled on 32-bit Linux. disable IPP's minMaxLoc_32f on 32-bit OSes only 2015-03-06 15:02:22 +03:00
Vadim Pisarevsky
361eb633f6 Merge pull request #3795 from samyak-268:sqr-filter-doc 2015-03-06 10:22:56 +00:00
Vadim Pisarevsky
fd7a76fe5d Merge pull request #3796 from enpe:master 2015-03-06 10:21:57 +00:00
Vadim Pisarevsky
092f599aac Merge pull request #3797 from Dmitry-Me:reduceVariableScope6 2015-03-06 10:20:45 +00:00
Vadim Pisarevsky
8c69266cbf Merge pull request #3786 from jviney:fix_background_subtractor_knn_width_step 2015-03-06 10:17:43 +00:00
Dmitry-Me
2fb4178f7c Reduce variable scope 2015-03-06 10:17:37 +03:00
Nils Plath
32d56c6b43 Fixed: wrong conversion of float-based Mat input inside the AKAZE. 2015-03-05 23:55:07 +01:00
Samyak Datta
20efcff166 Added doxygen comments for sqrBoxFilter() method 2015-03-06 03:50:51 +05:30
Erik Karlsson
c41efe4e30 Refactoring in preparation for per-channel h-values 2015-03-05 17:50:52 +01:00
Vadim Pisarevsky
7a52c3d9f1 1) make sure Python 2.7 is detected on Ubuntu (including libs) when it's there.
2) disable IPP on 32-bit Linux when OpenCV is built as shared libs. Otherwise we get linker errors
3) disable IPP's minMaxIdx 32-bit floating-point flavor in a hope that it fixes some test failures
2015-03-05 18:58:54 +03:00
Erik Karlsson
18be52c05b Changed LUTs from IT to int 2015-03-05 13:55:06 +01:00
Erik Karlsson
305cff36e2 Changed from IT to int for distance calculation 2015-03-05 13:36:42 +01:00
Vadim Pisarevsky
aa113c5a85 Merge pull request #3787 from Dmitry-Me:fixNullPointerDereference2 2015-03-05 12:19:02 +00:00
Dmitry-Me
d164d51380 Fix potential null pointer dereference 2015-03-05 10:31:51 +03:00
Vadim Pisarevsky
f9b8ce1d25 Merge pull request #3784 from ilya-lavrenov:nvidia_android 2015-03-05 06:43:03 +00:00
Jonathan Viney
4f24dc0959 Fix KNN background subtraction not honoring width step. 2015-03-05 12:46:07 +13:00
Vadim Pisarevsky
0b99f6bcd6 Merge pull request #3777 from ilya-lavrenov:nvidia_cvtcolor_eps 2015-03-04 13:53:41 +00:00
Ilya Lavrenov
cf4c79ebdd disabled some kernels for Android && NVidia 2015-03-04 14:46:49 +03:00
Vadim Pisarevsky
e4bc592c46 Merge pull request #3583 from oresths:tbb_canny 2015-03-04 10:49:27 +00:00
Vadim Pisarevsky
ebac739a35 Merge pull request #3781 from Dmitry-Me:dangerousStringManipulation 2015-03-04 10:45:25 +00:00
Olexa Bilaniuk
52e67c1a29 Whitespace & Doc fixes on lower half of rho.cpp.
Spaced methods & functions more consistently, and started documenting
which members does each method access directly or through its callers
within RHO_HEST_REFC.
2015-03-04 05:04:52 -05:00
Dmitry-Me
f8c454733b Remove dangerous string manipulation, merge declaration with assignment 2015-03-04 10:35:06 +03:00
Olexa Bilaniuk
27fd810b6f Silenced build warnings on Windows. 2015-03-04 02:09:59 -05:00
Olexa Bilaniuk
736b42b372 Refactorings and renamings.
- Deleted "RefC" from names of external-interface functions.
- Renamed rhorefc.[cpp|hpp] to rho.[cpp|hpp]
- Introduced RHO_HEST base class, from which RHO_HEST_REFC inherits.
- rhoInit() currently only returns a Ptr<RHO_HEST_REFC>, but in the
future it will be allowed to return pointers to other derived classes,
depending on the values returned by cv::checkHardwareSupport().
2015-03-04 01:43:13 -05:00
Olexa Bilaniuk
3a4d9a77b2 Merge remote-tracking branch 'refs/remotes/upstream/master' 2015-03-03 23:15:05 -05:00
Olexa Bilaniuk
408f93340a External interface converted to use OpenCV Ptr<> smart pointer. 2015-03-03 23:12:33 -05:00
Olexa Bilaniuk
f592321771 Internal buffers converted to use OpenCV dynamic memory allocation. 2015-03-03 22:57:40 -05:00
Vadim Pisarevsky
4bb496409c Merge pull request #3779 from Dmitry-Me:uniformComputationOfVariableSize 2015-03-03 18:51:56 +00:00
Vadim Pisarevsky
4701b22e14 Merge pull request #3607 from soyersoyer:yuyv_pixfmt 2015-03-03 18:15:50 +00:00
Olexa Bilaniuk
bb01231990 Substituted the NaN check with OpenCV's implementation. 2015-03-03 13:06:36 -05:00
Olexa Bilaniuk
e7d5e57264 Merge remote-tracking branch 'refs/remotes/upstream/master' 2015-03-03 11:56:03 -05:00
Olexa Bilaniuk
16f36a5fda Replaced division by reciprocal + multiply in a few places. 2015-03-03 11:55:36 -05:00
Olexa Bilaniuk
e1abc416cf Changed seeding in initialization.
The call to rand()/random() is now a call to (unsigned)cv::theRNG().
2015-03-03 11:48:41 -05:00
Olexa Bilaniuk
0f6ea38eac Added OPENCV_ prefix to #include guard. 2015-03-03 11:42:04 -05:00
Olexa Bilaniuk
a2affe70d9 Deleted last remnants of restrict keyword. 2015-03-03 11:40:44 -05:00
Vadim Pisarevsky
dcff28b778 Merge pull request #3717 from Dmitry-Me:removeUnneededIndirections 2015-03-03 16:15:25 +00:00
Dmitry-Me
c587bae997 Uniform computation of variable size 2015-03-03 16:11:07 +03:00
Olexa Bilaniuk
b229d6b7ac Moved constants to cv:: namespace. 2015-03-03 08:05:52 -05:00
Vadim Pisarevsky
6820292256 Merge pull request #3700 from MSOpenTech:winrt-cmake-contrib 2015-03-03 12:52:03 +00:00
Vadim Pisarevsky
d3b74cdcb2 Merge pull request #3773 from ilya-lavrenov:warning 2015-03-03 12:33:17 +00:00
Ilya Lavrenov
26eebb3ee3 increased EPS for cvtColor for NVIDIA 2015-03-03 15:26:51 +03:00
Dmitry-Me
1b7066fc95 Reduce variable scope, only compute values that are used later 2015-03-03 11:04:22 +03:00
Erik Karlsson
69eae13ff3 Changed pointers from sample_t * to uchar *. Rescaling psz accordingly. 2015-03-03 03:02:44 +01:00
Erik Karlsson
d56d04e41b Updated documentation 2015-03-03 01:34:29 +01:00
Erik Karlsson
ac6771f975 Added test cases 2015-03-03 01:20:33 +01:00
Erik Karlsson
ae08884854 Added support for 4-component input for fastNlMeansDenoising[Multi][Abs] 2015-03-03 01:19:34 +01:00
Olexa Bilaniuk
ed2a23768e Merge remote-tracking branch 'refs/remotes/upstream/master' 2015-03-02 17:55:34 -05:00
Erik Karlsson
87760d13fb Cleanup and addition of 4-component support for ocl_fastNlMeansDenoising 2015-03-02 22:33:14 +01:00
Vadim Pisarevsky
7c7a63bebc Merge pull request #3772 from Dmitry-Me:reduceVariableScope4 2015-03-02 19:52:18 +00:00
Maxim Kostin
22a30af353 Fixing buildbot job:
- explicitly turning OCL off since WinRT does not support it
 - fixing macro definitions in core/ocl.cpp

Signed-off-by: Maxim Kostin <v-maxkos@microsoft.com>
2015-03-02 22:26:45 +03:00
Maxim Kostin
cdd23440c9 Adding support for WinRT(WinPhone 8/8.1 and Win Store) via CMake 3.1
- Substituted HAVE_WINRT with WINRT
- Fixed compilation issues in ocl.cpp and parallel.cpp
- Fixed compiler issue for WP8: "C2678: binary '+' : no operator found which takes a left-hand - Fixed gitignore
- Added #ifdef HAVE_OPENCL to remove compiler warnings in ocl.cpp
- Used NO_GETENV similar to '3rdparty\libjpeg\jmemmgr.c;
- Added ole32.lib for core module (for WindowsStore 8.0 builds)
- Made OpenCV_ARCH aware of ARM

Signed-off-by: Maxim Kostin <v-maxkos@microsoft.com>
2015-03-02 22:26:43 +03:00
Maksim Shabunin
37c74e38f4 Python support 2015-03-02 18:13:00 +03:00
Maksim Shabunin
457123027e Modified java wrapping mechanism 2015-03-02 18:12:30 +03:00
Erik Karlsson
50bb14a0a8 Avoiding unnecessary copy by creating borders in place after RGB -> RGBA conversion 2015-03-02 15:48:00 +01:00
Ilya Lavrenov
ffc453ebfd fixed [-Wsign-compare] warning 2015-03-02 16:41:06 +03:00
Dmitry-Me
4e582b131b Reduce veriables scope, move declaration to first use 2015-03-02 16:27:48 +03:00
Vadim Pisarevsky
5850a9b8c3 Merge pull request #3744 from es0m:remotes/upstream/2.4.10.x-prep 2015-03-02 11:38:25 +00:00
Vadim Pisarevsky
e43a14ccd2 Merge pull request #3750 from Dmitry-Me:reduceVariableScope3 2015-03-02 10:55:37 +00:00
Vadim Pisarevsky
de0997ab32 Merge pull request #3749 from alalek:fix_android_camera_master 2015-03-02 10:55:16 +00:00
Vadim Pisarevsky
8e37a693e5 Merge pull request #3758 from ilya-lavrenov:aarch64 2015-03-02 10:50:31 +00:00
Vadim Pisarevsky
845d3edb67 Merge pull request #3757 from ilya-lavrenov:popcnp 2015-03-02 10:50:08 +00:00
Vadim Pisarevsky
f3f2f8ba97 Merge pull request #3764 from jet47:runtime-disable-optimizations 2015-03-02 10:35:18 +00:00
Erik Karlsson
73663dcdd1 Added support for 16-bit input 2015-03-02 03:29:17 +01:00
Erik Karlsson
3bde9e9365 Added test cases 2015-03-01 22:22:09 +01:00
Erik Karlsson
a9ff335a89 Added OpenCL support for FastNlMeansDenoisingAbs 2015-03-01 22:21:36 +01:00
Erik Karlsson
9f7cac8c59 Addtion of test cases for CV_8UC3 2015-03-01 21:01:57 +01:00
Erik Karlsson
0fdb95e195 Refactoring and addition of CV_8UC3 to ocl_fastNlMeansDenoising 2015-03-01 20:59:34 +01:00
StevenPuttemans
aea328e326 fixing CUDA cascade classifiers function and needed models 2015-02-27 14:20:27 +01:00
Vladislav Vinogradov
4254e35f6a merge new setUseOptimizations function with existed setUseOptimized 2015-02-27 14:24:51 +03:00
Vladislav Vinogradov
4800a34be3 do not dump OpenCL info if it is disabled 2015-02-27 12:52:44 +03:00
Vladislav Vinogradov
c10f1851cb rename setOptimizations -> setUseOptimizations 2015-02-27 12:52:28 +03:00
Vladislav Vinogradov
cda6fed41f move tegra namespace out of cv to prevent conflicts 2015-02-27 12:52:11 +03:00
Olexa Bilaniuk
5748cea80d Removed unnecessary precision in damped Cholesky decomposition.
Cholesky decomposition is stable; It is not necessary to carry it out
internally at double precision if the result will be truncated to single
precision when stored.
2015-02-26 21:47:29 -05:00
Vladislav Vinogradov
d696fac8b8 move cuda tests from core to cudaarithm 2015-02-26 19:49:12 +03:00
Ilya Lavrenov
c5a80193a8 aarch64 support 2015-02-26 19:43:32 +03:00
Vladislav Vinogradov
57b8640a76 disable all optimizations for CUDA tests 2015-02-26 19:36:13 +03:00
Vladislav Vinogradov
12180bd7b1 add generic method to disable/enable all optimizations (IPP, OpenCL, Tegra) 2015-02-26 19:36:04 +03:00
Vladislav Vinogradov
44e41baffe use new functions before all tegra:: calls 2015-02-26 19:34:58 +03:00
Vladislav Vinogradov
f8484e3266 add fucntion to control tegra optimizations in run-time 2015-02-26 19:34:20 +03:00
Olexa Bilaniuk
59d6279d4b Merge remote-tracking branch 'refs/remotes/upstream/master' 2015-02-25 20:26:42 -05:00
Ilya Lavrenov
b963d84b41 fixed bug #4215 2015-02-25 21:57:17 +03:00
Dmitry-Me
2311504c44 Reduce variables scope 2015-02-25 10:38:44 +03:00
Alexander Alekhin
52effe9e72 Android: fix JavaCameraView implementation
1) Fixed deadlock if camera is started and stopped immediately
2) Invalid pattern usage of Object.wait(). Refer to "spurious wakeup": http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#wait
3) Fixed buffer usage:
  a) fix eliminates processing of zero NV12 (green in RGB) first frame
  b) latest ready frame is delivered for processing (not previous)
2015-02-24 18:52:54 +03:00
Vadim Pisarevsky
bdb088dcca Merge pull request #3712 from jet47:fix-cuda-build-on-windows 2015-02-24 15:39:01 +00:00
Vadim Pisarevsky
b64b82a1ef Merge pull request #3734 from Dmitry-Me:reduceVariableScope2 2015-02-24 15:38:19 +00:00
Vadim Pisarevsky
0016f6d73d Merge pull request #3736 from nisargthakkar:Bug3634_master 2015-02-24 15:38:02 +00:00
Vadim Pisarevsky
5dc569866e Merge pull request #3743 from StevenPuttemans:fix_3887_master 2015-02-24 15:37:13 +00:00
Maksim Shabunin
1fe1ebf20c Merge pull request #3728 from StevenPuttemans:fix_3714_master 2015-02-24 10:09:22 +00:00
Maksim Shabunin
02488215e6 Merge pull request #3741 from StevenPuttemans:fix_3028_master 2015-02-24 10:05:16 +00:00
Eric Sommerlade
998a909705 fixed whitespace issues 2015-02-23 08:15:34 -07:00
StevenPuttemans
6902fa6b1c fix formula getGaussianKernel in docs 2015-02-23 15:23:02 +01:00
StevenPuttemans
7401b02022 fix ellipse fitting notice 2015-02-23 15:05:55 +01:00
Eric Sommerlade
a07d7a70a0 added support for uncompressed parameters to tiff image format as described here: expertland.net/question/b6o3n6p9a72341db823b48nl98m91dx8n1/detail.html 2015-02-23 06:12:42 -07:00
Olexa Bilaniuk
eb7a7884f6 Merge remote-tracking branch 'refs/remotes/upstream/master' 2015-02-21 12:32:25 -05:00
Olexa Bilaniuk
f454929d9c PRNG changes: xorshift128+ algorithm, and seeding API.
- Switched to the extremely fast, while simple and high-quality,
xorshift128+ PRNG algorithm by Sebastiano Vigna in "Further scramblings
of Marsaglia's xorshift generators. CoRR, abs/1402.6246, 2014" (2^128-1
period, passes BigCrush tests). Performance improved by 10% over
random().
- Added an API to allow seeding with a specified seed, rather than using
rand() or random(). This allows deterministic, reproducible results in
tests using our algorithm (although findHomography() does not yet
support passing an entropy source on its own end).
2015-02-21 12:31:55 -05:00
Nisarg Thakkar
b8f65d0252 Same as Bug #3309. Pushing to master 2015-02-21 09:20:00 +05:30
Dmitry-Me
53566f2ec0 Reduce variable scope, fix indenting 2015-02-20 17:46:48 +03:00
Olexa Bilaniuk
0ea009f611 Merge remote-tracking branch 'refs/remotes/upstream/master' 2015-02-20 08:26:04 -05:00
Ilya Lavrenov
5f7a994ad1 fixed internal compiler error 2015-02-20 15:46:22 +03:00
StevenPuttemans
350dccf84a fix error 3714 2015-02-20 13:30:40 +01:00
Vadim Pisarevsky
7b270f4c69 Merge pull request #3679 from mshabunin:remove-algorithm-factory 2015-02-19 18:43:58 +00:00
theodore
cfccdc9b0c documenting findnonzero() function 2015-02-19 17:57:52 +01:00
theodore
453f384bd7 adding documentation for the findnonzero() function 2015-02-19 17:38:44 +01:00
Dmitry-Me
98a8045aaf Reduce variable scope 2015-02-19 13:10:02 +01:00
Olexa Bilaniuk
f148f23382 Merge remote-tracking branch 'refs/remotes/upstream/master' 2015-02-18 21:04:39 -05:00
Dmitry-Me
c4c3e4fe83 Remove unneeded indirections 2015-02-18 18:25:17 +03:00
Erik Karlsson
8e7aff4486 Changed fastNlMeansDenoising and fastNlMeansDenoisingMulti back to sum of sq distances. Moved sq sum of abs distances to fastNlMeansDenoisingAbs and fastNlMeansDenoisingMultiAbs 2015-02-18 14:59:52 +01:00
Vadim Pisarevsky
6ff2f395e6 Merge pull request #3702 from Dmitry-Me:reduceVariableScope 2015-02-18 13:55:58 +00:00
Vadim Pisarevsky
b64e106bb1 Merge pull request #3703 from BKNio:fixing_bad_alloc 2015-02-18 13:50:14 +00:00
Vadim Pisarevsky
1d356b6a48 Merge pull request #3714 from uqtimes:fixUIImageToMat 2015-02-18 13:49:14 +00:00
Vadim Pisarevsky
87f86b31fa Merge pull request #3715 from mshabunin:enable-stl 2015-02-18 12:12:14 +00:00
Maksim Shabunin
553020c448 Enabled STL usage within the library 2015-02-18 12:36:50 +03:00
UQ Times
1944443d10 iOS: fix crash from overrelease in UIImageToMat
- previous pull request: https://github.com/Itseez/opencv/pull/3340
2015-02-18 13:30:08 +09:00
Erik Karlsson
e647b7c7e8 Calculating almost_dist2weight at full size to avoid bounds checking 2015-02-17 23:08:36 +01:00
Erik Karlsson
baf266c29e Changed from sum of squared differences to sum of abs differences 2015-02-17 21:30:52 +01:00
Vladislav Vinogradov
671b59aa9d fix windows build with CUDA
rename cv::cuda::internal namespace
to cv::cuda::device to prevent conflicts
with cv::internal
2015-02-17 21:50:39 +03:00
Maksim Shabunin
79e8f0680c Updated ml module interfaces and documentation 2015-02-17 11:46:14 +03:00
exeltior
b51805e245 Update mser.cpp
Need to initialize boolean variable pass2Only, otherwise the result is not predictable
2015-02-16 18:17:41 +01:00
Vadim Pisarevsky
d1a15097fe Merge pull request #3664 from wangyan42164:ocl_cascasde_barrier 2015-02-16 15:42:26 +00:00
Ahmatnurov Dinar
21ee113af3 fixig std::bad_alloc
if points0 is empty checkVector(2) return -1, it causes the exception
2015-02-16 17:15:54 +03:00
Dmitry-Me
103687871d Reduce variable scope 2015-02-16 15:39:52 +03:00
Maksim Shabunin
da383e65e2 Remove deprecated methods from cv::Algorithm 2015-02-16 15:28:54 +03:00
Vadim Pisarevsky
d509ecd19a Merge pull request #3666 from mshabunin:meta-module 2015-02-16 11:43:30 +00:00
Vadim Pisarevsky
edab3916aa Merge pull request #3696 from Dmitry-Me:shouldPassByReference 2015-02-16 11:29:22 +00:00
Vladislav Vinogradov
a932d8aba1 use full qualified name for all internal namespaces to prevent ambiguous symbol errors 2015-02-16 11:31:21 +03:00
Olexa Bilaniuk
5d79b1092f Merge remote-tracking branch 'refs/remotes/upstream/master' into rho 2015-02-13 08:12:11 -05:00
Olexa Bilaniuk
e5696bc5e6 Whitespace change reverts to minimize delta w.r.t master. 2015-02-13 08:07:15 -05:00
Erik Karlsson
c339720af9 Preparation for 16-bit colored denoising. Currently not working due to cvtColor not supportint 16-bit Lab conversion. 2015-02-13 13:38:37 +01:00
Hamid Bazargani
e22678018b Fix sacCalcJacobianErrors arguments. (curr.inl replaced with best.inl)
Fix the issue given NULL inlMask
2015-02-13 00:30:18 -05:00
Hamid Bazargani
42176f8eb1 Fix sacCalcJacobianErrors arguments. (curr.inl replaced with best.inl)
Fix the issue given NULL inlMask
2015-02-13 00:09:37 -05:00
ASUS
9a555063e8 Fix sacCalcJacobianErrors arguments. (curr.inl replaced with best.inl)
Fix the issue given NULL inlMask
2015-02-12 23:34:48 -05:00
Erik Karlsson
584372bbf2 Fixed bounds checking 2015-02-13 04:33:29 +01:00
ASUS
6b04351ce1 Merge branch 'accuracy' of https://github.com/obilaniu/opencv into accuracy
Conflicts:
	modules/calib3d/src/rhorefc.cpp
2015-02-12 21:27:08 -05:00
ASUS
6dbf13d7b5 saveBestModel() is modified. accuracy test is passed. 2015-02-12 21:22:52 -05:00
Erik Karlsson
d588c717da Using WEIGHT_THRESHOLD to limit table size. Still problematic with 16-bit and big h-values. 2015-02-13 00:11:30 +01:00
Erik Karlsson
42db9e7153 Basic 16-bit implmentation of fastNlMeansDenoising. Table-based exponetiation leads to high memory footprint and loss of precision in 16-bit mode. 2015-02-12 22:14:01 +01:00
Erik Karlsson
49e93747b1 Added saturate_cast from int64 and uint64 2015-02-12 22:05:05 +01:00
Olexa Bilaniuk
ff2509af56 Fixed printouts in testcase to blame the correct method for a failure.
Previously, certain test failures by the method RHO would result in an
error blaming RANSAC instead. The fix involves a parameter change to
several functions in test_homography.cpp.
2015-02-12 14:42:37 -05:00
Erik Karlsson
8368fb9ea8 Additional refactoring preparing for 16-bit implementation 2015-02-12 18:45:09 +01:00
Dmitry-Me
c3f8fc41b7 Parameters should have been passed by reference 2015-02-12 17:32:43 +03:00
Erik Karlsson
e178294b49 Refactoring in preparation for 16-bit implementation of fastNlMeansDenoising 2015-02-12 15:23:28 +01:00
Maksim Shabunin
a5a510da4b Support for compound modules, support for contrib_world 2015-02-10 18:30:05 +03:00
Vadim Pisarevsky
5466e321b8 Merge pull request #3687 from Dmitry-Me:fixPossibleNullPtrDeref 2015-02-10 12:17:11 +00:00
Dmitry-Me
ea48fcfc9f Fix possible null pointer dereference 2015-02-09 12:38:02 +03:00
Olexa Bilaniuk
ccd33a721e Fixed build failures related to designSPRTTest(). 2015-02-07 01:19:40 -05:00
Olexa Bilaniuk
7e273396c1 Merge remote-tracking branch 'refs/remotes/upstream/master' into rho 2015-02-07 01:08:10 -05:00
Olexa Bilaniuk
adac8c04bb Converted to C++ style, + bugfixes.
The code has been refactored in response to feedback on Pull Request

Also, outputZeroH() now also zeroes the inlier set, much like
outputModel().
2015-02-07 00:56:58 -05:00
Andrew Senin
8c7b3b91fa Fixing XIMEA parameters mapping (issue #4176) 2015-02-07 00:50:23 +03:00