Matthijs ter Woord
6be879d25a
Progress on heap.
2016-06-20 13:10:34 -04:00
Matthijs ter Woord
4bdfbab03c
Merge remote-tracking branch 'origin/master' into rat
2016-06-20 12:51:11 -04:00
Charles Betros
3cc57fdd5c
Merge branch 'master'
2016-06-19 18:32:48 -05:00
Charles Betros
a194f1dd73
Disable Frotz build.
2016-06-19 12:35:03 -05:00
Matthijs ter Woord
f311499e26
Ongoing changes for RAT.
2016-06-19 12:47:40 -04:00
Matthijs ter Woord
6ea1ca7255
Object pointer size is bumped up to 8. First the actual data pointer, then the pointer to the next object pointer
2016-06-18 15:06:30 -04:00
Matthijs ter Woord
030ba36636
Fix loading fields larger than 4 bytes from structs on the stack.
2016-06-18 14:00:58 -04:00
Matthijs ter Woord
35a15fe005
Start with increasing object reference size.
2016-06-18 12:25:17 -04:00
Matthijs ter Woord
ba808f2bc6
.
2016-06-17 18:35:22 -04:00
Matthijs ter Woord
efb7823d9f
.
2016-06-17 16:40:46 -04:00
Matthijs ter Woord
5d66d12d69
.
2016-06-17 15:18:29 -04:00
Matthijs ter Woord
17dcca9a91
.
2016-06-17 15:01:56 -04:00
Matthijs ter Woord
8ed25a38ea
.
2016-06-17 14:34:31 -04:00
Matthijs ter Woord
adb9d3b988
.
2016-06-17 14:30:54 -04:00
Matthijs ter Woord
991e81a5c3
.
2016-06-17 13:46:05 -04:00
Matthijs ter Woord
7a8e62b2eb
.
2016-06-17 13:28:56 -04:00
Matthijs ter Woord
cc44dc021e
.
2016-06-17 13:16:01 -04:00
Matthijs ter Woord
ac1f59034d
.
2016-06-17 12:58:26 -04:00
Matthijs ter Woord
4cfc7aabe7
.
2016-06-17 08:23:48 -04:00
Matthijs ter Woord
9d203f141e
.
2016-06-16 20:08:41 -04:00
Matthijs ter Woord
8a87dfff87
.
2016-06-16 19:19:14 -04:00
Matthijs ter Woord
40ff5ad8a7
.
2016-06-16 19:04:26 -04:00
Matthijs ter Woord
990591c9ff
.
2016-06-16 18:47:08 -04:00
Matthijs ter Woord
02b8c2eddf
.
2016-06-16 18:27:45 -04:00
Matthijs ter Woord
a1d0215d86
.
2016-06-16 17:53:08 -04:00
Matthijs ter Woord
7417d1a1b1
.
2016-06-16 17:35:09 -04:00
Matthijs ter Woord
78771994f8
.
2016-06-16 17:24:46 -04:00
Matthijs ter Woord
c4af87a933
.
2016-06-16 16:54:53 -04:00
Matthijs ter Woord
dada8dcc68
.
2016-06-16 15:05:39 -04:00
Matthijs ter Woord
7657070e1e
.
2016-06-16 14:33:38 -04:00
Matthijs ter Woord
2fed5169e1
.
2016-06-16 13:41:29 -04:00
Matthijs ter Woord
00c205ba68
.
2016-06-16 13:06:44 -04:00
Matthijs ter Woord
dd1710d742
.
2016-06-16 12:59:00 -04:00
Matthijs ter Woord
246898198d
.
2016-06-16 12:33:07 -04:00
Matthijs ter Woord
be7b8a2a94
.
2016-06-16 12:30:38 -04:00
Matthijs ter Woord
f1f5e88c3d
.
2016-06-16 11:41:19 -04:00
Matthijs ter Woord
550901b19a
.
2016-06-15 18:10:54 -04:00
Matthijs ter Woord
594efd2fd7
.
2016-06-15 16:50:40 -04:00
Matthijs ter Woord
2ce5c4cb1f
.
2016-06-15 16:47:21 -04:00
Matthijs ter Woord
fc902e5a68
.
2016-06-15 16:38:45 -04:00
Matthijs ter Woord
98cd7da12f
.
2016-06-15 16:31:21 -04:00
Matthijs ter Woord
6b5373da23
.
2016-06-15 15:16:52 -04:00
Matthijs ter Woord
dd55bff2c1
.
2016-06-15 15:11:55 -04:00
Matthijs ter Woord
5979ad032e
.
2016-06-15 15:04:50 -04:00
Matthijs ter Woord
12d1ae5614
.
2016-06-15 12:50:06 -04:00
Matthijs ter Woord
5803a95381
.
2016-06-15 12:36:58 -04:00
Matthijs ter Woord
f86cbfb6bf
.
2016-06-15 12:35:46 -04:00
Matthijs ter Woord
ff5662e9aa
.
2016-06-15 12:22:55 -04:00
Matthijs ter Woord
1dc41f1a4b
.
2016-06-15 12:16:27 -04:00
Matthijs ter Woord
f6f0bab95b
.
2016-06-15 12:03:44 -04:00
Matthijs ter Woord
feef7db59a
.
2016-06-15 11:45:30 -04:00
Matthijs ter Woord
bbb8265166
.
2016-06-15 09:55:11 -04:00
Matthijs ter Woord
f5e3ea6da9
.
2016-06-15 08:39:19 -04:00
Matthijs ter Woord
456772f88f
.
2016-06-14 21:25:40 -04:00
Matthijs ter Woord
9a2f6714b5
.
2016-06-14 20:58:19 -04:00
Matthijs ter Woord
ee36382c27
.
2016-06-14 20:39:18 -04:00
Matthijs ter Woord
336020b418
.
2016-06-14 20:36:14 -04:00
Matthijs ter Woord
1b42377138
.
2016-06-14 17:53:14 -04:00
Matthijs ter Woord
d5dc2328b0
More refactoring.
2016-06-14 16:46:11 -04:00
Matthijs ter Woord
e96dbf6764
.
2016-06-14 15:39:58 -04:00
Matthijs ter Woord
ebb1eae7fd
First stage of compiler refactorings
2016-06-14 15:26:39 -04:00
Matthijs ter Woord
4ed9d246ae
First compiler refactoring.
2016-06-13 08:27:59 -04:00
Matthijs ter Woord
91d891244c
.
2016-06-12 09:25:09 -04:00
Matthijs ter Woord
4d6fceb9e7
First step in improving x# and compiler.
2016-06-11 16:13:13 -04:00
Charles Betros
455ee32d5b
Merge branch 'master' of https://github.com/CosmosOS/Cosmos.git
2016-06-10 16:44:54 -05:00
Matthijs ter Woord
6e37341d08
Remove .ilinstructions file creation.
2016-06-10 13:33:39 -04:00
Matthijs ter Woord
82330b4b48
Initial work to move out the heap to a separate project.
2016-06-10 11:42:30 -04:00
Matthijs ter Woord
c4929d43a5
We don't need to call the class constructor if we're already in the class itself.
2016-06-09 16:48:43 -04:00
Matthijs ter Woord
a492f0eccc
Mark heap implementation with PlugRequired
2016-06-09 10:08:25 -04:00
Matthijs ter Woord
659dc538bf
Potentially fix the build?
2016-06-04 19:11:01 +02:00
Matthijs ter Woord
2bd58182af
Fix plugs referencing non-existing types.
2016-06-04 19:01:45 +02:00
fanoI
a5bd158514
Merge branch 'master' of https://github.com/CosmosOS/Cosmos
...
# Conflicts:
# Tests/Cosmos.Compiler.Tests.Bcl/Kernel.cs
# source/Cosmos.Core/CPU.cs
2016-05-28 14:33:11 +02:00
sgetaz
2de222bb2d
Plug attribute ( #196 )
...
Plug required attribute.
2016-05-25 09:17:06 -05:00
fanoI
58c556f085
- Initial work as for https://github.com/CosmosOS/Cosmos/issues/359
...
- Added Console.Clear() to Guess Demo (the boot text remained on screen)
- Added to BCL test BitConverterTest (all failing), test for single / double arithmetic operations
- Added to TestRunner BCLTest
2016-05-21 18:55:39 +02:00
Charles Betros
f19063ccc9
Fixed ldelema and disabled float and double tests.
2016-05-15 13:44:09 -05:00
Charles Betros
a2d610e1db
Reversed return values.
2016-04-15 13:12:57 -05:00
Charles Betros
3fcc2860a9
FAT file system work.
2016-04-14 13:27:18 -05:00
Charles Betros
ef9282836b
Fixed keyboard interrupt, generics, and double.
2016-04-14 13:26:54 -05:00
Charles Betros
89d021772b
Added byref types so they work with constrained callvirt.
2016-03-24 13:24:09 -05:00
Charles Betros
83ad5f34cf
Fixed some issues with wtong types on the stack.
2016-03-24 08:52:02 -05:00
Charles Betros
2de021685e
Fix up packages.
2016-03-13 13:14:37 -05:00
Charles Betros
8937b5c11a
Merge branch 'master' of https://github.com/CosmosOS/Cosmos.git
2016-03-13 12:49:12 -05:00
Charles Betros
0bef9a8fac
Updating solution config.
2016-03-13 12:27:58 -05:00
fanoI
35583c657a
Merge branch 'master' of https://github.com/CosmosOS/Cosmos
...
# Conflicts:
# Demos/Guess/GuessOS.cs
# Tests/Cosmos.Compiler.Tests.Bcl/Kernel.cs
# source/Cosmos.System.Plugs/Cosmos.System.Plugs.csproj
2016-03-07 21:23:11 +01:00
Charles Betros
4a3b6a50df
Fixed up project and solution configurations and remove jetbrains annotations.
2016-03-06 17:33:21 -06:00
Charles Betros
c12022c893
Got constrained callvirt working.
2016-03-05 23:56:27 -06:00
fanoI
eb533357b0
- Correctly plugged Enum's GetHashCode()
...
- Removed GetHashCode() methods that were not really needed
- Plugged class CultureInfo for GetHashCode()
- Plugged class Runtime.CompilerServices for GetHashCode()
- Plugged class RuntimeTypeImpl for GetHashCode()
- Fixed tests that were failing using true .NET GetHashCode()
- Fixed IL Interpreter added SHIFT, AND, XOR... for sbyte and short
2016-03-05 23:10:06 +01:00
Charles Betros
559ee8570a
Filesystem work.
2016-03-02 15:57:53 -06:00
fanoI
2c745389fe
Trying to Plug GetHashCode() for all ValueTypes.
2016-02-28 22:39:20 +01:00
Charles Betros
5b35e17502
Fixed Path
2016-02-25 12:00:06 -06:00
Charles Betros
043cbb2f19
Fixed path plugs
2016-02-25 11:56:30 -06:00
Charles Betros
1f104d812b
Revert "Added some globalization and culture plugs. Also added string and struct tests."
...
This reverts commit 815f2f78a4 .
2016-02-21 10:16:00 -06:00
Charles Betros
815f2f78a4
Added some globalization and culture plugs. Also added string and struct tests.
2016-02-21 10:13:29 -06:00
Charles Betros
f5468fe2b0
Path mostly works. Added a bunch of exception strings to environment.
2016-02-15 22:35:08 -06:00
Charles Betros
ba6070dbe7
String and simple debugger change
2016-02-15 16:02:23 -06:00
Charles Betros
6f50b73386
Changed build configuration
2016-02-15 01:29:03 -06:00
Charles Betros
b6d95e1668
Plugged a bunch of classes and implemented a few ilops. Removed most of Path plugs.
2016-02-14 13:07:26 -06:00
Charles Betros
98d8336882
Fixed TraceAssemblies
2016-01-16 12:53:37 -06:00
Charles Betros
2ec375e1c8
Fixed unbox and unbox_any. Also added interfaces to the branch ops. Added checks in assembler for duplicate methods. Added a few more exception message resource strings.
2016-01-04 21:42:56 -06:00
Charles Betros
438ac960c1
Closes #11
2015-12-31 15:25:10 -06:00
Charles Betros
3c52efaac6
Reorganized some plugs
2015-12-26 18:04:58 -06:00
Charles Betros
1a2ed6b720
Fixed speed issue with the heap.
2015-12-18 12:28:24 -06:00
Charles Betros
c01f5f1048
Reorganizing plugs.
2015-12-18 08:08:49 -06:00
Charles Betros
4e08b03a8a
Closes #271 . Added an option for stack corruption detection. Checks can now occur after every instruction or for method footers ornly.
2015-12-17 00:15:51 -06:00
Charles Betros
fd54c66225
Reworked fat file system. Added conditionals for debug output. Implemented some System.IO plugs.
2015-11-26 11:45:58 -06:00
Charles Betros
417df82cf7
Handle stelem for unsigned types.
2015-11-24 11:38:57 -06:00
charles.betros@gmail.com
f23d8207ab
Merge branch 'master' of https://github.com/CosmosOS/Cosmos.git
2015-11-20 23:52:57 -06:00
charles.betros@gmail.com
31684c15d6
Working on FAT and create directory.
2015-11-20 23:52:08 -06:00
Matthijs ter Woord
c85d42162b
Merge pull request #259 from rebizu/master
...
fixing #254
2015-11-18 08:39:00 +01:00
Rebizu
4dd59188fa
fixes #254
2015-11-17 20:14:49 +01:00
charles.betros@hcss.com
ef181b4ee5
Set the parent directory to root if it's null.
2015-11-16 11:30:28 -06:00
charles.betros@hcss.com
d46bf5dd09
File system work.
2015-11-16 09:15:38 -06:00
Matthijs ter Woord
b7021b8fc1
Seems like compiler bug is fixed now.
2015-11-07 11:37:18 +01:00
Matthijs ter Woord
d5a1c54636
Another reformat
2015-11-07 10:22:33 +01:00
Matthijs ter Woord
6f9fcec90a
Reformat code, and add settings to editorconfig file.
2015-11-07 10:16:09 +01:00
Matthijs ter Woord
7d13293011
Add editorconfig file
2015-11-06 20:37:00 +01:00
Matthijs ter Woord
4ffeeae278
Compiler bug fixed.
2015-11-06 09:03:00 +01:00
Charles Betros
7565bb6a30
Exceptions were causing stack corruptions.
2015-11-04 22:31:38 -06:00
Charles Betros
d2ee8be699
Clean up extra stack after an exception.
2015-11-03 14:08:42 -06:00
Matthijs ter Woord
34c46c2c73
Refactor, so find references is easier to use.
2015-11-02 17:22:56 +01:00
Matthijs ter Woord
ac2a505f77
Merge branch 'master' of https://github.com/CosmosOS/Cosmos
2015-11-02 11:37:22 +01:00
Matthijs ter Woord
f9c6edf4f9
Add comment.
2015-11-02 11:37:08 +01:00
Charles Betros
48a145d45d
Ldarg was printing its label twice.
2015-10-31 20:44:05 -05:00
Matthijs ter Woord
cd7f5e572a
Slight improvement of stack corruption checking code.
2015-10-24 13:19:34 +02:00
Matthijs ter Woord
3e5dd5f34b
Ongoing work.
2015-10-04 15:58:17 +02:00
Matthijs ter Woord
3fb0e6622d
Progress on fat.
2015-10-04 11:53:03 +02:00
Matthijs ter Woord
8e35d79602
Reading almost fixed.
2015-10-02 19:39:56 +02:00
Matthijs ter Woord
6e2dda177f
Ongoing fixes for file system work.
2015-10-02 17:59:06 +02:00
Matthijs ter Woord
d9a9737608
Filesystem/VFS/FAT work by @charlesbetros has been merged into main kernel.
...
This does NOT mean it's fully working yet!
2015-10-02 17:12:00 +02:00
Matthijs ter Woord
27286f0b33
Continuing fixes.
2015-09-05 18:18:23 +02:00
Matthijs ter Woord
44690293e8
Delegates issue solved.,
2015-09-05 18:11:20 +02:00
Matthijs ter Woord
4769cb2ce6
Fixes for delegates.
2015-09-04 17:51:45 +02:00
Matthijs ter Woord
0f21a8059f
Refactoring and more fixes to plug.
2015-09-04 13:32:23 +02:00
Darnell Williams
19932b4a5b
Array plug fixes for memory handles
2015-08-31 03:41:47 -04:00
Matthijs ter Woord
4f945b11ce
Disable vmt debug code.
2015-08-31 08:39:36 +02:00
Matthijs ter Woord
0b5490a281
Ongoing changes.
2015-08-18 20:19:36 +02:00
Matthijs ter Woord
e030f5b850
Progress.
2015-08-05 17:32:32 -04:00
Matthijs ter Woord
2762604cbc
More progress
2015-08-05 14:58:57 -04:00
Matthijs ter Woord
1d9c648691
Seem to be there. Merging follows.
2015-08-02 09:46:47 -04:00
Matthijs ter Woord
ac674008e4
More compiler fixes for new memory model.
2015-08-01 14:52:14 -04:00
Matthijs ter Woord
d2db318dc1
Progress. Most stuff seems to work now.
2015-08-01 13:48:25 -04:00
Matthijs ter Woord
422d6a56b8
Starting to work now.
2015-08-01 09:22:35 -04:00
Matthijs ter Woord
f54d7ace72
More progress
2015-08-01 09:04:35 -04:00
Matthijs ter Woord
4274bc52ac
More progress.
2015-07-31 13:11:51 -04:00
Matthijs ter Woord
73758c2643
Ongoing memory work.
2015-07-31 12:46:07 -04:00
Matthijs ter Woord
be0ace5c62
- Turns out the VMT table was not generated correctly: the _Handle datamember wasn't pointing to the actual data area
...
- small bugfix in heap.
2015-07-31 11:51:27 -04:00
Matthijs ter Woord
675ce71d10
Ongoing work.
2015-07-31 08:34:28 -04:00
Matthijs ter Woord
630118f4c9
Fixed an issue with VMT initialization.
2015-07-29 20:13:40 -04:00
Matthijs ter Woord
e91b500738
.
2015-07-29 18:58:42 -04:00
Matthijs ter Woord
7a35344202
More work on memory
2015-07-29 15:35:47 -04:00
Matthijs ter Woord
d6167d6e00
- Add extra logging to GlobalSystemInfo and Heap
...
- Fixed ldstr and string sending with memory handles
2015-07-29 10:44:52 -04:00
Matthijs ter Woord
7858e43584
Ongoing work on memory
2015-07-28 20:18:14 -04:00
Matthijs ter Woord
b56ce24f52
Merge branch 'master' into memory_handles
...
Conflicts:
Tests/Cosmos.TestRunner.Core/DefaultEngineConfiguration.cs
2015-07-28 16:30:05 -04:00
Matthijs ter Woord
fa4da67ff0
Ongoing debugger work.
2015-07-28 11:51:11 -04:00
Matthijs ter Woord
c1c3782770
Code reformat
2015-07-26 19:04:07 -04:00
Matthijs ter Woord
16f3dab45a
I think the default Heap allocates handles now.
2015-07-26 18:37:09 -04:00
Charles Betros
2e4e0dd370
Added a test kernel for boxing.
...
Moved Char Plug to Cosmos.System.Plugs
Added FAT writing. (Doesn't work yet.)
2015-07-24 17:52:44 -05:00
Matthijs ter Woord
66d1597746
.
2015-07-23 16:48:34 -04:00
Matthijs ter Woord
ae4600a0ee
Compilation seems fixed now. Still testing debugger.
2015-07-23 12:33:58 -04:00
Matthijs ter Woord
c340812392
Stack corruption bug is fixed now. Now still need to fix tests.
2015-07-23 12:24:54 -04:00
Matthijs ter Woord
c80eb38c8a
Reformat
2015-07-23 12:04:48 -04:00
Matthijs ter Woord
9171a3de35
.
2015-07-23 11:58:30 -04:00
Matthijs ter Woord
1154900a9b
Ongoing fixes
2015-07-23 11:26:39 -04:00
Matthijs ter Woord
67f06011e0
Implement simple branching for 8-byte operands.
2015-07-22 21:39:18 -04:00
Matthijs ter Woord
d827212e4a
Ongoing VS2015 work.
2015-07-22 21:23:55 -04:00
Matthijs ter Woord
befe55c72b
Add local and argument info on plugged method. argument info is handy there (locals not so much)
2015-07-18 02:19:28 +02:00
CSharpLover
9911ada17a
Update links for github
2015-07-04 18:24:31 +03:00
Matthijs ter Woord
732a3e2a3a
More fixes to stack reservation. We were assuming that there was space reserved for return value, while it shouldn't in all cases.
2015-07-04 12:46:28 +02:00
Matthijs ter Woord
cba227747b
Reformat code
2015-07-03 20:49:46 +02:00
Matthijs ter Woord
8eaee43bc0
Small compiler fix.
2015-07-01 20:28:31 +02:00
Matthijs ter Woord
f2f539eebb
Now the rings check also makes sure the kernel dll is ring User.
2015-07-01 19:47:21 +02:00
Matthijs ter Woord
cb5aae2c00
Ongoing adding of tests, fixing of IL interpreter.
2015-06-27 18:33:52 +02:00
Matthijs ter Woord
09e9a3abcb
Ongoing fixes.
2015-06-27 18:07:58 +02:00
Matthijs ter Woord
e80a1d6d07
Fixes #137
2015-06-27 18:05:12 +02:00
Matthijs ter Woord
68282aa557
Keyboard works. Next is enabling code that should be enabled, and removing debug code.
2015-06-17 20:09:37 +02:00
Matthijs ter Woord
44cdc7dc61
Other fixes.
2015-06-16 18:35:46 +02:00
Matthijs ter Woord
a8d39ced64
Fix ldelem for non-4 byte aligned elements.
2015-06-07 17:17:32 +02:00
Matthijs ter Woord
7c991e5ca6
Improve IL interpreter. Ldobj knows what type it pushes.
2015-06-07 17:17:16 +02:00
Matthijs ter Woord
bd93b5e272
Fix some IL interpreter logging statements and other small debugging fixes.
2015-06-07 17:17:01 +02:00
Matthijs ter Woord
56edbce9b6
Merge remote-tracking branch 'origin/master' into keyboard-work
2015-06-07 12:39:13 +02:00
Matthijs ter Woord
63d83a683d
Fix int64 divide.
2015-06-07 12:37:02 +02:00
Matthijs ter Woord
32a41216f7
.
2015-05-27 18:36:58 +02:00
Matthijs ter Woord
c205ec054d
Merge master.
2015-05-27 18:36:40 +02:00
Matthijs ter Woord
11e8b95b9c
Merge remote-tracking branch 'origin/ldelem-fixes'
2015-05-26 19:57:42 +02:00
Matthijs ter Woord
da1feb890a
Fixes to ldelem. Fixes #119
2015-05-26 19:56:54 +02:00
Andrey Kurdyumov
c26d29d113
Use shared code where possible
2015-05-26 22:42:47 +06:00
Geramy L. Loveless
548a71a4fb
Fixed compile error
...
I have fixed the compiler error.
We called Assemble twice causing the compilation of two of the same
instruction sets.
2015-05-25 22:51:08 -07:00
Matthijs ter Woord
0af76c627e
Initial fix for #119 . This doesn't work yet.
2015-05-25 20:03:33 +02:00
Matthijs ter Woord
6cadd58f24
Small fix to editorconfig
2015-05-25 19:57:21 +02:00
Matthijs ter Woord
dd93b7d2b9
Initial keyboard work. Does not work due to bug in the compiler. (Ldelem_ref)
2015-05-24 16:33:21 +02:00
Matthijs ter Woord
243417857e
Add plug for UIntPtr.ToString
2015-05-22 17:20:35 +02:00
zdimension
bd9bf0884c
Update AppAssemblerRingsCheck.cs
2015-05-22 13:41:20 +02:00
zdimension
03e4266a3b
Added Console colors to the Cosmos.System.Console class and modified the plugs calls. Now Console.ForegroundColor and Console.BackgroundColor are working again!
2015-05-22 13:37:08 +02:00
Matthijs ter Woord
bfe5d73ba2
Several compiler fixes.
2015-05-10 19:04:20 +02:00
Matthijs ter Woord
37b2451193
A little bit code documentation
2015-05-10 15:34:23 +02:00
Matthijs ter Woord
906b554f17
Re-enable the ExceptionOccurred label.
2015-05-10 15:31:31 +02:00
Matthijs ter Woord
8268084c23
Compilation fix.
2015-05-09 11:15:32 +02:00
Matthijs ter Woord
08f62aa561
Merge pull request #56 from kant2002/Issue-9
...
Compilation improvements.
2015-05-08 19:50:06 +02:00
Matthijs ter Woord
1c22489404
Merge pull request #78 from kant2002/vs2015
...
Support for Vs2015
2015-05-08 19:42:38 +02:00
Andrey Kurdyumov
e8de8ad44d
Update Mono.Cecil to 0.9.6.1
...
Nuget used for delivering dependencies
2015-05-08 22:40:52 +06:00