Melanie
818254916c
JustinCC's core re-merge
2013-01-16 15:47:55 +00:00
Justin Clark-Casey (justincc)
0963ece25b
Implement co-operative script termination if termination comes during a script wait event (llSleep(), etc.)
...
This makes use of EventWaitHandles since various web references indicate that Thread.Interrupt() can also cause runtime instability.
If co-op termination is enabled, then termination sets the wait handle instead of waiting for a timeout before possibly aborting the thread.
This allows the script to cleanly terminate if it's in a llSleep/LL function delay or the next time it enters such a wait without any timeout period.
Co-op termination is not yet testable since checking for termination request within loops that never trigger a wait is not yet implemented.
This commit, unlike 1b5c41c
, passes the wait handle as an extra parameter through IScript.Initialize() instead of passing IScriptInstance itself.
2013-01-16 02:07:43 +00:00
Justin Clark-Casey (justincc)
b8949024bc
Revert "Implement co-operative script termination if termination comes during a script wait event (llSleep(), etc.)"
...
Doing this as a favour to Melanie. This will be back with passing the wait handles directly to the api.
This reverts commit 1b5c41c14a
.
2013-01-16 01:45:09 +00:00
Justin Clark-Casey (justincc)
1b5c41c14a
Implement co-operative script termination if termination comes during a script wait event (llSleep(), etc.)
...
This makes use of EventWaitHandles since various web references indicate that Thread.Interrupt() can also cause runtime instability.
If co-op termination is enabled, then termination sets the wait handle instead of waiting for a timeout before possibly aborting the thread.
This allows the script to cleanly terminate if it's in a llSleep/LL function delay or the next time it enters such a wait without any timeout period.
Co-op termination is not yet testable since checking for termination request within loops that never trigger a wait is not yet implemented.
2013-01-16 00:12:40 +00:00
Justin Clark-Casey (justincc)
fccb03227e
Instead of passing separate engine, part and item components to script APIs, pass down IScriptInstance instead.
...
This is to allow the future co-operative script thread terminate feature to detect and act upon termination requests.
This splits the assembly and state loading out from the ScriptInstance() constructor to a separate Load() method
in order to facilititate continued script logic regression testing.
2013-01-15 21:13:22 +00:00
Melanie
7943c8d11c
Merge branch 'master' into careminster
...
Conflicts:
OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
2013-01-02 11:52:37 +00:00
Robert Adams
48f718f39f
BulletSim: first round of conversion from direct BulletSimAPI interfacing by BulletSim core to using the BulletSimAPITemplate. Physical object creation and destruction first.
2012-12-31 19:57:21 -08:00
Melanie
258588d5b5
Merge branch 'master' into careminster
2012-12-26 01:16:08 +00:00
teravus
92e4f9f412
* Initial commit of BulletSimN (BulletSNPlugin). Purely C# implementation of BulletSim. This is designed to be /as close as possible/ to the BulletSim plugin while still being entirely in the managed space to make keeping it up to date easy as possible (no thinking work). This implementation is /slower/ then the c++ version just because it's fully managed, so it's not appropriate for huge sims, but it will run small ones OK. At the moment, it supports all known features of BulletSim. Think of it like.. POS but everything works. To use this plugin, set the physics plugin to BulletSimN.
2012-12-23 15:21:25 -05:00
Melanie
f30d519bcc
Merge branch 'master' into careminster
2012-12-09 21:27:32 +00:00
BlueWall
063f37cf73
One more time...
...
needed one more "../" in the path (copy paste): Thanks BrucePatton for catching that one
2012-12-07 20:03:15 -05:00
BlueWall
a6e5a2f4df
Prebuild fix
...
Had moved the class to a different namespace but failed to add the reference
2012-12-07 19:41:07 -05:00
BlueWall
0b455d2882
Merge branch 'master' into connector_plugin
2012-12-07 15:36:43 -05:00
Melanie
2cb824d3fc
Merge branch 'master' into careminster
...
Conflicts:
OpenSim/Region/CoreModules/Avatar/InstantMessage/MessageTransferModule.cs
OpenSim/Region/Framework/Scenes/Scene.cs
2012-12-07 03:49:04 +00:00
Justin Clark-Casey (justincc)
7fdc251774
Add path references for Mono.Addins where they were missing for DataSnapshot and UserStatistics.
...
Should address http://opensimulator.org/mantis/view.php?id=6444
Appears that nant doesn't need these paths but building directly in monodevelop does.
2012-12-04 22:24:51 +00:00
BlueWall
c754003944
Merge branch 'master' into connector_plugin
...
Conflicts:
OpenSim/Server/Base/ServicesServerBase.cs
2012-11-25 17:03:14 -05:00
Melanie
fd7a83f439
Merge branch 'master' into careminster
...
Conflicts:
OpenSim/Region/CoreModules/World/Estate/EstateManagementModule.cs
OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs
2012-11-25 14:13:50 +00:00
Justin Clark-Casey (justincc)
22d4c52ffc
Consistenly make NUnit test cases inherit from OpenSimTestCase which automatically turns off any logging enabled between tests
2012-11-24 03:15:24 +00:00
Justin Clark-Casey (justincc)
82690e1384
Fix bug where loading an OAR with a deeded parcel would always set the parcel owner ID to the estate owner even if the group UUID was present.
...
Aims to address http://opensimulator.org/mantis/view.php?id=6355
As part of this work, an incomplete IXGroupsData was added which currently only allows store/fetch/delete of group records
(i.e. no membership data etc)
This is subject to change and currently only an in-memory storage implementation exists for regression test purposes.
2012-11-24 02:43:31 +00:00
Melanie
c2e89334b8
Merge branch 'master' into careminster
2012-11-23 01:44:35 +00:00
justincc
7133b6bb4f
Fix recent windows build break.
...
Add missing OpenSim.Framework.Servers reference
2012-11-23 01:43:11 +00:00
Melanie
3c1a58c67a
Merge branch 'master' into careminster
2012-11-22 13:37:27 +00:00
Justin Clark-Casey (justincc)
45d1e6ab09
Make "show info" command available across all servers
...
This helpfully lists version information, startup location and console log level
2012-11-22 04:45:53 +00:00
Melanie
c4c6121752
Merge branch 'master' into careminster
2012-11-22 03:17:33 +00:00
Justin Clark-Casey (justincc)
bac8ac32da
Add regression test for a good request made to the asset service post handler.
...
Adds new OpenSim.Server.Handlers.Tests.dll to test suite
2012-11-21 23:42:34 +00:00
Melanie
e4659a83f1
Merge branch 'master' into careminster
2012-11-17 02:03:24 +00:00
Justin Clark-Casey (justincc)
e25c51330a
Add basic XInventoryServicesTests.TestAddItem() regression test.
2012-11-17 00:12:25 +00:00
Melanie
5895c4cc6f
Merge branch 'master' into careminster
...
Conflicts:
OpenSim/Region/ClientStack/Linden/UDP/LLUDPServer.cs
2012-11-15 03:46:10 +00:00
Justin Clark-Casey (justincc)
0c4efdc6a8
Fix build break from 1aa0271
by adding System.Core to prebuild.xml
2012-11-15 03:32:03 +00:00
BlueWall
07f1d44174
Merge branch 'master' into connector_plugin
2012-10-20 05:25:58 -04:00
BlueWall
99bb6c9304
Move PluginManager
...
Move PluginManager out to OpenSimFramework for general use
2012-10-19 07:38:36 -04:00
Melanie
6ce93b22d1
Merge branch 'master' into careminster
...
Conflicts:
OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs
OpenSim/Region/ClientStack/Linden/UDP/LLUDPServer.cs
OpenSim/Region/Framework/Scenes/Scene.cs
2012-10-12 19:05:06 +01:00
Justin Clark-Casey (justincc)
1e86c58822
Remove now unnecessary OpenSim.Framework.Console reference from Monitoring.
...
Properly resolve circular reference which no longer appeared in Mono build as there were no using statements for it.
2012-10-12 01:58:46 +01:00
Justin Clark-Casey (justincc)
387ce8ef35
Fix build break by moving OpenSim.Framework.Console back below HttpServer in the build order.
...
Luckily, it turns out Framework.Monitoring doesn't need to reference Console directly.
2012-10-12 00:10:51 +01:00
Justin Clark-Casey (justincc)
1f2472d0fc
Extend "show stats" command to "show stats [list|all|<category name>]"
...
This allows different categories of stats to be shown, with options to list categories or show all stats.
Currently categories are scene and simulator and only a very few stats are currently registered via this mechanism.
This commit also adds percentage stats for packets and blocks reused from the packet pool.
2012-10-11 23:28:53 +01:00
BlueWall
08f6c8065e
Add System.Core to references
2012-10-10 09:32:31 -04:00
BlueWall
252af020b0
Merge branch 'master' into connector_plugin
...
Conflicts:
OpenSim/Server/ServerMain.cs
2012-10-09 06:44:14 -04:00
Melanie
f7df68d922
Merge branch 'master' into careminster
...
Conflicts:
OpenSim/Region/CoreModules/Avatar/Lure/LureModule.cs
OpenSim/Region/Framework/Scenes/Scene.cs
OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
OpenSim/Services/Connectors/Asset/AssetServicesConnector.cs
2012-10-07 02:48:28 +01:00
BlueWall
440726250c
Added parts to manage repositories and plugin management
...
This is working - more testing to follow, then soem documentation
2012-10-06 11:48:21 -04:00
Justin Clark-Casey (justincc)
d87813a194
Finally fix build break by allowing UserManagementModule (which constructs a packet directly) to reference OpenSim.Region.ClientStack.LindenUDP.
...
This time I actually properly did a clean build
2012-10-05 02:02:19 +01:00
Melanie
001ec0e2e6
Merge branch 'avination' into careminster
...
Conflicts:
OpenSim/Region/CoreModules/Agent/AssetTransaction/AgentAssetsTransactions.cs
OpenSim/Region/Framework/Scenes/Scene.cs
2012-09-27 17:29:44 +01:00
UbitUmarov
a1a0a90720
more upload changes (plus untouch prebuild.xml)
2012-09-24 22:57:33 +01:00
UbitUmarov
7ae0b5e605
touch prebuild.xml
2012-09-24 21:28:03 +01:00
Melanie
2d02405186
Change the poll service to use a thread pool for replies to make sure the
...
event queues aren't blocked by other traffic.
2012-09-23 23:16:25 +02:00
UbitUmarov
f79de2232e
fix build
2012-09-17 13:52:27 +01:00
UbitUmarov
bc85c1d084
add suport funtions for mesh upload costs
2012-09-17 13:32:58 +01:00
Melanie
66bf1376b5
Merge branch 'avination' into careminster
...
Conflicts:
OpenSim/Capabilities/Handlers/GetTexture/GetTextureHandler.cs
2012-09-16 04:21:18 +01:00
Melanie
db774d4292
Merge branch 'master' into careminster
...
Conflicts:
OpenSim/Region/CoreModules/Framework/EntityTransfer/HGEntityTransferModule.cs
OpenSim/Region/Framework/Scenes/EventManager.cs
2012-09-16 04:11:20 +01:00
Justin Clark-Casey (justincc)
1ec84ac8b1
Add basic asset connector tests to check behaviour for normal, local and temporary assets.
...
Make AssetServiceConnector return more useful data on failure, such as what DLL it was trying to load
Allow LocalAssetServiceConnector.GetData() to work without a cache present, as works for the other lasc Get* methods.
2012-09-15 02:12:26 +01:00
BlueWall
81fda6f947
Revert "Fix prebuild.xml format for reference"
...
This reverts commit 96f889b20e
.
2012-09-11 23:43:37 -04:00
BlueWall
96f889b20e
Fix prebuild.xml format for reference
...
Mono.Data.SQL entry was bad
2012-09-11 22:56:29 -04:00
UbitUmarov
0d5023b46b
fix prebuild.xml
2012-09-11 12:34:44 +01:00
Melanie
a6753c14a5
Revamp the v3 inventory sending. Uses threads and some nifty mechanics to
...
leverage the Poll Service without blocking it's workers.
2012-09-11 10:39:43 +02:00
Melanie
e2e8b09059
Merge branch 'master' into careminster
2012-09-02 22:15:55 +01:00
BlueWall
a0eda6eb16
Fix Windows build
...
Add reference to fix Windows build: no windows here to test, please report any issues back to IRC #opensim-dev ASAP
2012-08-31 13:09:54 -04:00
Melanie
1b15144208
Merge branch 'master' into careminster
...
Conflicts:
OpenSim/Data/MySQL/MySQLSimulationData.cs
OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs
OpenSim/Region/CoreModules/Scripting/LSLHttp/UrlModule.cs
OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs
2012-08-31 01:32:18 +01:00
Justin Clark-Casey (justincc)
adce58b33a
Renaming existing 'torture' tests to 'performance' tests instead, since this better matches what they really do.
...
nant target name changes to test-perf instead of torture, to match test-stress
still not run by default
2012-08-29 23:19:21 +01:00
Justin Clark-Casey (justincc)
ec726413dd
Add VectorRenderModuleStressTests that contains a long running test that generates thousands of vector textures concurrently.
...
Intended for use if there are future issues with mono crashes whilst generate dynamic textures.
This test is triggered via a new test-stress nant target.
Not run by default.
2012-08-29 23:04:00 +01:00
Melanie
f8603a215d
Merge branch 'master' into careminster
...
Conflicts:
OpenSim/Framework/IClientAPI.cs
OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs
OpenSim/Region/CoreModules/ServiceConnectorsOut/Simulation/LocalSimulationConnector.cs
OpenSim/Region/Framework/Scenes/Scene.cs
OpenSim/Region/OptionalModules/Agent/InternetRelayClientView/Server/IRCClientView.cs
OpenSim/Region/OptionalModules/World/NPC/NPCAvatar.cs
OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
2012-08-23 01:41:47 +01:00
Justin Clark-Casey (justincc)
bcbd450fe4
Add --force flag to "kick user" console command to allow bypassing of recent race condition checks.
...
This is to allow a second attempt to remove an avatar even if "show connections" shows them as already inactive (i.e. close has already been attempted once).
You should only attempt --force if a normal kick fails.
This is partly for diagnostics as we have seen some connections occasionally remain on lbsa plaza even if they are registered as inactive.
This is not a permanent solution and may not work anyway - the ultimate solution is to stop this problem from happening in the first place.
2012-08-20 20:24:54 +01:00
UbitUmarov
df2f9b1885
*** TESTTTTT ** downgrade from .net 4.0 to .net3.5
2012-08-06 11:04:29 +01:00
Melanie
0c00abcce1
Merge branch 'master' into careminster
...
Conflicts:
OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
2012-08-03 16:46:11 +01:00
Justin Clark-Casey (justincc)
86b005de1d
Add simple draw test for the VectorRenderModule
2012-08-02 22:14:09 +01:00
Melanie
45b72bf01c
Fix some merge issues and a functional issue in the scene manager
2012-07-28 01:06:28 +01:00
Melanie
771d79e83e
Merge branch 'master' into careminster
...
Conflicts:
OpenSim/Framework/Monitoring/BaseStatsCollector.cs
OpenSim/Region/Application/OpenSim.cs
OpenSim/Region/Application/OpenSimBase.cs
OpenSim/Region/Framework/Scenes/SceneManager.cs
bin/OpenMetaverse.Rendering.Meshmerizer.dll
bin/OpenMetaverse.StructuredData.dll
bin/OpenMetaverse.dll
bin/OpenMetaverseTypes.dll
prebuild.xml
2012-07-28 00:39:36 +01:00
Justin Clark-Casey (justincc)
5aec0ff207
Move Watchdog and MemoryWatchdog classes into OpenSim.Framework.Monitoring with other monitoring code from OpenSim.Framework
2012-07-25 23:27:00 +01:00
Justin Clark-Casey (justincc)
35efa88c26
Rename OpenSim.Framework.Statistics to OpenSim.Framework.Monitoring.
...
This better reflects the long-term purpose of that project and matches Monitoring modules.
2012-07-25 23:11:50 +01:00
Justin Clark-Casey (justincc)
a1e99642c1
Add experimental "OpenSim object memory churn" statistics to output of region console "show stats" command
...
This aims to capture the amount of memory that OpenSim turns over whilst operating a region.
This memory is not lost - apart from leaks it is reclaimed by the garbage collector.
However, the more memory that gets turned over the more work the GC has to do to reclaim it.
2012-07-25 22:29:40 +01:00
Melanie
7dfd581913
Fix merge issues in prebuild
2012-07-23 19:17:27 +01:00
Melanie
fb8e92c90b
Merge branch 'master' into careminster
...
Conflicts:
OpenSim/Region/ScriptEngine/Shared/Helpers.cs
prebuild.xml
2012-07-23 18:54:12 +01:00
Robert Adams
b537bbc410
Reorder BulletSim in prebuild.xml so OpenSim.Region.CoreModules is compiled before BulletSim is
2012-07-20 15:44:53 -07:00
Robert Adams
24dfb5bcb3
Remove an added but unnecessary dependency in prebuild.xml
2012-07-20 14:07:35 -07:00
Robert Adams
e9c437ed0e
Correct namespace of BinaryLoggingModule (a cut-and-paste error). Add a simple, high performance logger for high frequency logging (physics sub-operations, for instance).
2012-07-20 14:02:26 -07:00
Melanie
d632fd7124
Merge branch 'master' into careminster
...
Conflicts:
OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs
OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
OpenSim/Region/Framework/Scenes/SceneObjectPart.cs
OpenSim/Region/ScriptEngine/Shared/Instance/ScriptInstance.cs
2012-07-12 08:55:16 +01:00
Justin Clark-Casey (justincc)
9c89ad9154
Fix build break for windows with missing package for IScriptEngine in prebuild.xml for OpenSim.Region.CoreModules.Tests.dll
2012-07-11 22:15:53 +01:00
Justin Clark-Casey (justincc)
fc24563206
Add regression TestDetachScriptedAttachmentToInventory()
...
This currently only does a relatively crude check for a ScriptState node in the serialized xml
2012-07-11 21:43:35 +01:00
Melanie
0bc8238a6c
Merge branch 'master' into careminster
...
Conflicts:
OpenSim/Framework/Watchdog.cs
OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs
OpenSim/Region/Framework/Scenes/Scene.cs
OpenSim/Region/Framework/Scenes/SceneObjectPart.cs
OpenSim/Region/Framework/Scenes/ScenePresence.cs
2012-07-11 03:56:50 +01:00
Justin Clark-Casey (justincc)
58869e5aa0
Fix recent SOP.GetSittingAvatars() to return null if there are no sitting avatars rather than throwing an exception.
...
Extends sitting avatar regression tests to test new sitters information
2012-07-10 23:03:52 +01:00
Melanie
30d872caad
Merge branch 'master' into careminster
2012-06-15 02:53:34 +01:00
Justin Clark-Casey (justincc)
94517c8d5c
Make the "debug http" command available for robust as well as the simulator. This allows one to see incoming requests as they happen.
...
This required making everything use the common MainServer class for registering and retrieving http servers, rather than duplicate structures.
2012-06-15 02:51:52 +01:00
Melanie
e8cd9fbbb7
Merge branch 'master' into careminster
...
Conflicts:
OpenSim/Region/Framework/Scenes/Scene.Inventory.cs
2012-06-07 23:33:40 +01:00
Talun
d5cc959683
Mantis 6044 Building master currently fails.
...
Add missing reference to System.Core
Signed-off-by: BlueWall <jamesh@bluewallgroup.com>
2012-06-07 11:16:18 -04:00
Melanie
dcbcbd697f
Merge branch 'master' into careminster
...
Conflicts:
OpenSim/Region/ScriptEngine/Shared/Api/Implementation/Plugins/SensorRepeat.cs
2012-04-27 22:28:09 +01:00
BlueWall
db566fbb09
Fix prebuild.xml
...
adding a reference to a dll requires 'path="..."'
2012-04-27 16:17:46 -04:00
Oren Hurvitz
37d770f814
Use DotNetZip to compress OARs and IARs.
...
DotNetZip provides much better compression than standard .NET.
2012-04-27 19:46:31 +01:00
Melanie
c2be894330
Fx up estate settings
2012-04-18 23:23:01 +01:00
Melanie
63c44719f7
Merge branch 'master' into careminster
...
Conflicts:
OpenSim/Region/CoreModules/Framework/EntityTransfer/EntityTransferModule.cs
OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
OpenSim/Region/Framework/Scenes/SceneObjectPart.cs
OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
2012-04-03 23:52:53 +01:00
Justin Clark-Casey (justincc)
7468299673
Eliminate race condition where many callers would check SOP.PhysicsActor != null then assume it was still not null in later code.
...
Another thread could come and turn off physics for a part (null PhysicsActor) at any point.
Had to turn off localCopy on warp3D CoreModules section in prebuild.xml since on current nant this copies all DLLs in bin/ which can be a very large number with compiled DLLs
No obvious reason for doing that copy - nothing else does it.
2012-04-03 05:51:38 +01:00
Melanie
f3132c45d9
Merge branch 'master' into careminster
...
Conflicts:
OpenSim/Region/CoreModules/Framework/InventoryAccess/InventoryAccessModule.cs
OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
OpenSim/Tests/Common/Mock/TestClient.cs
2012-03-31 02:18:02 +01:00
Diva Canto
5a8ed50639
Added missing dependency for MS 2008. I hope. (I don't have 2008 to test this) mantis #5949
2012-03-30 12:39:45 -07:00
Justin Clark-Casey (justincc)
3525c876c8
Make default "show friends" console command show friends fetched from the friends service.
...
There is no a --cache option which will show friends from the local cache if available.
2012-03-30 01:57:38 +01:00
Justin Clark-Casey (justincc)
59157d9d63
Add simple login test with online friends. Add IFriendsModule.GrantRights() for granting rights via a module call.
...
Rename IFriendsModule.GetFriendPerms() -> GetRightsGrantedByFriend() to be more self-documenting and consistent with friends module terminology.
Add some method doc.
2012-03-30 00:42:55 +01:00
Melanie
4e4a3e8d22
Update prebuild
2012-03-20 23:22:49 +01:00
UbitUmarov
41a0c850f8
added a new UbitMeshing module so i can mess it...
2012-03-17 09:27:56 +00:00
Melanie
ac577bf606
Merge branch 'master' into careminster
2012-03-09 00:56:52 +00:00
Justin Clark-Casey (justincc)
034c9d6bcc
Merge branch 'xassetservice'
2012-03-09 00:19:42 +00:00
Melanie
b0fc96c17d
Merge branch 'master' into careminster
2012-03-08 19:10:22 +00:00
Justin Clark-Casey (justincc)
749c3fef8a
Change "help" to display categories/module list then "help <category/module>" to display commands in a category.
...
This is to deal with the hundred lines of command splurge when one previously typed "help"
Modelled somewhat on the mysql console
One can still type help <command> to get per command help at any point.
Categories capitalized to avoid conflict with the all-lowercase commands (except for commander system, as of yet).
Does not affect command parsing or any other aspects of the console apart from the help system.
Backwards compatible with existing modules.
2012-03-08 01:51:37 +00:00
Justin Clark-Casey (justincc)
441449e240
Switch to sha256 from sha1 in order to avoid future asset hash collisions.
...
Some successful collision attacks have been carried out on sha1 with speculation that more are possible.
http://en.wikipedia.org/wiki/Cryptographic_hash_function#Cryptographic_hash_algorithms
No successful attacks have been shown on sha256, which makes it less likely that anybody will be able to engineer an asset hash collision in the future.
Tradeoff is more storage required for hashes, and more cpu to hash, though this is neglible compared to db operations and network access.
2012-03-06 00:14:21 +00:00
Melanie
03e7bc1526
Merge branch 'master' into careminster
...
Conflicts:
2012-02-21 10:20:56 +00:00