Serhiy Storchaka 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								bb86bf4c4e 
								
							 
						 
						
							
							
								
								bpo-35444: Unify and optimize the helper for getting a builtin object. (GH-11047)  
							
							... 
							
							
							
							This speeds up pickling of some iterators.
This fixes also error handling in pickling methods when fail to
look up builtin "getattr". 
							
						 
						
							2018-12-11 08:28:18 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								bcda8f1d42 
								
							 
						 
						
							
							
								
								bpo-35081: Add Include/internal/pycore_object.h (GH-10640)  
							
							... 
							
							
							
							Move _PyObject_GC_TRACK() and _PyObject_GC_UNTRACK() from
Include/objimpl.h to Include/internal/pycore_object.h. 
							
						 
						
							2018-11-21 22:27:47 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								621cebe81b 
								
							 
						 
						
							
							
								
								bpo-35081: Rename internal headers (GH-10275)  
							
							... 
							
							
							
							Rename Include/internal/ headers:
* pycore_hash.h -> pycore_pyhash.h
* pycore_lifecycle.h -> pycore_pylifecycle.h
* pycore_mem.h -> pycore_pymem.h
* pycore_state.h -> pycore_pystate.h
Add missing headers to Makefile.pre.in and PCbuild:
* pycore_condvar.h.
* pycore_hamt.h
* pycore_pyhash.h 
							
						 
						
							2018-11-12 16:53:38 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								e281f7d80c 
								
							 
						 
						
							
							
								
								bpo-35081: Move accu.h to Include/internal/pycore_accu.h (GH-10271)  
							
							... 
							
							
							
							The accu.h header is no longer part of the Python C API: it has been
moved to the "internal" headers which are restricted to Python
itself.
Replace #include "accu.h" with #include "pycore_accu.h". 
							
						 
						
							2018-11-01 02:30:36 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								27e2d1f219 
								
							 
						 
						
							
							
								
								bpo-35081: Add pycore_ prefix to internal header files (GH-10263)  
							
							... 
							
							
							
							* Rename Include/internal/ header files:
  * pyatomic.h -> pycore_atomic.h
  * ceval.h -> pycore_ceval.h
  * condvar.h -> pycore_condvar.h
  * context.h -> pycore_context.h
  * pygetopt.h -> pycore_getopt.h
  * gil.h -> pycore_gil.h
  * hamt.h -> pycore_hamt.h
  * hash.h -> pycore_hash.h
  * mem.h -> pycore_mem.h
  * pystate.h -> pycore_state.h
  * warnings.h -> pycore_warnings.h
* PCbuild project, Makefile.pre.in, Modules/Setup: add the
  Include/internal/ directory to the search paths of header files.
* Update includes. For example, replace #include "internal/mem.h"
  with #include "pycore_mem.h". 
							
						 
						
							2018-11-01 00:52:28 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Pablo Galindo 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								49c75a8086 
								
							 
						 
						
							
							
								
								bpo-35064 prefix smelly symbols that appear with COUNT_ALLOCS with _Py_ (GH-10152)  
							
							... 
							
							
							
							Configuring python with ./configure --with-pydebug CFLAGS="-D COUNT_ALLOCS -O0"
makes "make smelly" fail as some symbols were being exported without the "Py_" or
"_Py" prefixes. 
							
						 
						
							2018-10-28 15:02:17 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									jdemeyer 
								
							 
						 
						
							
							
							
							
								
							
							
								aeb1be5868 
								
							 
						 
						
							
							
								
								bpo-34751: improved hash function for tuples (GH-9471)  
							
							
							
						 
						
							2018-10-27 20:06:38 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								caba55b3b7 
								
							 
						 
						
							
							
								
								bpo-34301: Add _PyInterpreterState_Get() helper function (GH-8592)  
							
							... 
							
							
							
							sys_setcheckinterval() now uses a local variable to parse arguments,
before writing into interp->check_interval. 
							
						 
						
							2018-08-03 15:33:52 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Siddhesh Poyarekar 
								
							 
						 
						
							
							
							
							
								
							
							
								55edd0c185 
								
							 
						 
						
							
							
								
								bpo-33012: Fix invalid function cast warnings with gcc 8 for METH_NOARGS. (GH-6030)  
							
							... 
							
							
							
							METH_NOARGS functions need only a single argument but they are cast
into a PyCFunction, which takes two arguments.  This triggers an
invalid function cast warning in gcc8 due to the argument mismatch.
Fix this by adding a dummy unused argument. 
							
						 
						
							2018-04-29 21:59:33 +03:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Eddie Elizondo 
								
							 
						 
						
							
							
							
							
								
							
							
								745dc65b17 
								
							 
						 
						
							
							
								
								closes bpo-32898: Fix debug build crash with COUNT_ALLOCS (GH-5800)  
							
							
							
						 
						
							2018-02-21 20:55:18 -08:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Leo Arias 
								
							 
						 
						
							
							
							
							
								
							
							
								c3d9508ff2 
								
							 
						 
						
							
							
								
								bpo-32746: Fix multiple typos (GH-5144)  
							
							... 
							
							
							
							Fix typos found by codespell in docs, docstrings, and comments. 
							
						 
						
							2018-02-03 19:36:10 -05:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Serhiy Storchaka 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								1fb72d2ad2 
								
							 
						 
						
							
							
								
								bpo-32137: The repr of deeply nested dict now raises a RecursionError ( #4570 )  
							
							... 
							
							
							
							instead of crashing due to a stack overflow.
This perhaps will fix similar problems in other extension types. 
							
						 
						
							2017-12-03 22:12:11 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								25420fe290 
								
							 
						 
						
							
							
								
								bpo-32030: Add more options to _PyCoreConfig ( #4485 )  
							
							... 
							
							
							
							Py_Main() now handles two more -X options:
* -X showrefcount: new _PyCoreConfig.show_ref_count field
* -X showalloccount: new _PyCoreConfig.show_alloc_count field 
							
						 
						
							2017-11-20 18:12:22 -08:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									stratakis 
								
							 
						 
						
							
							
							
							
								
							
							
								e8b1965639 
								
							 
						 
						
							
							
								
								bpo-23699: Use a macro to reduce boilerplate code in rich comparison functions (GH-793)  
							
							
							
						 
						
							2017-11-02 20:32:54 +10:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Eric Snow 
								
							 
						 
						
							
							
							
							
								
							
							
								2ebc5ce42a 
								
							 
						 
						
							
							
								
								bpo-30860: Consolidate stateful runtime globals. ( #3397 )  
							
							... 
							
							
							
							* group the (stateful) runtime globals into various topical structs
* consolidate the topical structs under a single top-level _PyRuntimeState struct
* add a check-c-globals.py script that helps identify runtime globals
Other globals are excluded (see globals.txt and check-c-globals.py). 
							
						 
						
							2017-09-07 23:51:28 -06:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Serhiy Storchaka 
								
							 
						 
						
							
							
							
							
								
							
							
								b879fe82e7 
								
							 
						 
						
							
							
								
								Expand the PySlice_GetIndicesEx macro. ( #1023 )  
							
							
							
						 
						
							2017-04-08 09:53:51 +03:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Serhiy Storchaka 
								
							 
						 
						
							
							
							
							
								
							
							
								d4edfc9abf 
								
							 
						 
						
							
							
								
								bpo-29935: Fixed error messages in the index() method of tuple, list and deque ( #887 )  
							
							... 
							
							
							
							when pass indices of wrong type. 
							
						 
						
							2017-03-30 18:29:23 +03:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Serhiy Storchaka 
								
							 
						 
						
							
							
							
							
								
							
							
								0b5615926a 
								
							 
						 
						
							
							
								
								bpo-20186: Convert tuple object implementation to Argument Clinic. ( #614 )  
							
							
							
						 
						
							2017-03-19 08:47:58 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Serhiy Storchaka 
								
							 
						 
						
							
							
							
							
								
							
							
								98e80c2bab 
								
							 
						 
						
							
							
								
								bpo-29737: Optimize concatenating with empty tuple. ( #524 )  
							
							
							
						 
						
							2017-03-06 23:39:35 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Serhiy Storchaka 
								
							 
						 
						
							
							
							
							
								
							
							
								2e5642422f 
								
							 
						 
						
							
							
								
								bpo-29695: Remove bad keyword parameters in int(), bool(), float(), list() and tuple(). ( #518 )  
							
							
							
						 
						
							2017-03-06 17:01:06 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Serhiy Storchaka 
								
							 
						 
						
							
							
							
							
								
							
							
								58d23e6806 
								
							 
						 
						
							
							
								
								bpo-29695: Deprecated using bad named keyword arguments in builtings: ( #486 )  
							
							... 
							
							
							
							int(), bool(), float(), list() and tuple().  Specify the value as a
positional argument instead. 
							
						 
						
							2017-03-06 00:53:39 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Serhiy Storchaka 
								
							 
						 
						
							
							
							
							
								
							
							
								228b12edcc 
								
							 
						 
						
							
							
								
								Issue  #28999 : Use Py_RETURN_NONE, Py_RETURN_TRUE and Py_RETURN_FALSE wherever  
							
							... 
							
							
							
							possible.  Patch is writen with Coccinelle. 
							
						 
						
							2017-01-23 09:47:21 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Martin Panter 
								
							 
						 
						
							
							
							
							
								
							
							
								b93d8637a6 
								
							 
						 
						
							
							
								
								Issue  #1621 : Avoid signed overflow in list and tuple operations  
							
							... 
							
							
							
							Patch by Xiang Zhang. 
							
						 
						
							2016-07-25 02:39:20 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Serhiy Storchaka 
								
							 
						 
						
							
							
							
							
								
							
							
								7e160ce356 
								
							 
						 
						
							
							
								
								Issue  #23034 : The output of a special Python build with defined COUNT_ALLOCS,  
							
							... 
							
							
							
							SHOW_ALLOC_COUNT or SHOW_TRACK_COUNT macros is now off by  default.  It can
be re-enabled using the "-X showalloccount" option.  It now outputs to stderr
instead of stdout. 
							
						 
						
							2016-07-03 21:03:53 +03:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Serhiy Storchaka 
								
							 
						 
						
							
							
							
							
								
							
							
								ec39756960 
								
							 
						 
						
							
							
								
								Issue  #22570 : Renamed Py_SETREF to Py_XSETREF.  
							
							
							
						 
						
							2016-04-06 09:50:03 +03:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Serhiy Storchaka 
								
							 
						 
						
							
							
							
							
								
							
							
								ab479c49d3 
								
							 
						 
						
							
							
								
								Issue  #26494 : Fixed crash on iterating exhausting iterators.  
							
							... 
							
							
							
							Affected classes are generic sequence iterators, iterators of str, bytes,
bytearray, list, tuple, set, frozenset, dict, OrderedDict, corresponding
views and os.scandir() iterator. 
							
						 
						
							2016-03-30 20:41:15 +03:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Serhiy Storchaka 
								
							 
						 
						
							
							
							
							
								
							
							
								fbb1c5ee06 
								
							 
						 
						
							
							
								
								Issue  #26494 : Fixed crash on iterating exhausting iterators.  
							
							... 
							
							
							
							Affected classes are generic sequence iterators, iterators of str, bytes,
bytearray, list, tuple, set, frozenset, dict, OrderedDict, corresponding
views and os.scandir() iterator. 
							
						 
						
							2016-03-30 20:40:02 +03:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Serhiy Storchaka 
								
							 
						 
						
							
							
							
							
								
							
							
								1ed017ae92 
								
							 
						 
						
							
							
								
								Issue  #20440 : Cleaning up the code by using Py_SETREF and Py_CLEAR.  
							
							... 
							
							
							
							Old code is correct, but with Py_SETREF and Py_CLEAR it can be cleaner.
This patch doesn't fix bugs and hence there is no need to backport it. 
							
						 
						
							2015-12-27 15:51:32 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Antoine Pitrou 
								
							 
						 
						
							
							
							
							
								
							
							
								63afdaa110 
								
							 
						 
						
							
							
								
								Issue  #23629 : Fix the default __sizeof__ implementation for variable-sized objects.  
							
							
							
						 
						
							2015-03-10 22:35:24 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Antoine Pitrou 
								
							 
						 
						
							
							
							
							
								
							
							
								a654510150 
								
							 
						 
						
							
							
								
								Issue  #23629 : Fix the default __sizeof__ implementation for variable-sized objects.  
							
							
							
						 
						
							2015-03-10 22:32:00 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
							
							
								
							
							
								049e509a9f 
								
							 
						 
						
							
							
								
								Issue  #22207 : Fix "comparison between signed and unsigned integers" warning in  
							
							... 
							
							
							
							test checking for integer overflow on Py_ssize_t type: cast explicitly to
size_t. 
							
						 
						
							2014-08-17 22:20:00 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Terry Jan Reedy 
								
							 
						 
						
							
							
							
							
								
							
							
								ffff1440d1 
								
							 
						 
						
							
							
								
								Issue  #22077 : Improve index error messages for bytearrays, bytes, lists, and  
							
							... 
							
							
							
							tuples by adding 'or slices'. Added ', not <typename' for bytearrays.
Original patch by Claudiu Popa. 
							
						 
						
							2014-08-02 01:30:37 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Kristján Valur Jónsson 
								
							 
						 
						
							
							
							
							
								
							
							
								c5cc5011ac 
								
							 
						 
						
							
							
								
								Make the various iterators' "setstate" sliently and consistently clip the  
							
							... 
							
							
							
							index.  This avoids the possibility of setting an iterator to an invalid
state. 
							
						 
						
							2014-03-05 15:23:07 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Kristján Valur Jónsson 
								
							 
						 
						
							
							
							
							
								
							
							
								25dded041f 
								
							 
						 
						
							
							
								
								Make the various iterators' "setstate" sliently and consistently clip the  
							
							... 
							
							
							
							index.  This avoids the possibility of setting an iterator to an invalid
state. 
							
						 
						
							2014-03-05 13:47:57 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Serhiy Storchaka 
								
							 
						 
						
							
							
							
							
								
							
							
								dfe98a102e 
								
							 
						 
						
							
							
								
								Issue  #20437 : Fixed 22 potential bugs when deleting objects references.  
							
							
							
						 
						
							2014-02-09 13:46:20 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Serhiy Storchaka 
								
							 
						 
						
							
							
							
							
								
							
							
								505ff755d7 
								
							 
						 
						
							
							
								
								Issue  #20437 : Fixed 21 potential bugs when deleting objects references.  
							
							
							
						 
						
							2014-02-09 13:33:53 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
							
							
								
							
							
								88a9cd9b57 
								
							 
						 
						
							
							
								
								Issue  #19513 : repr(tuple) now uses _PyUnicodeWriter for better performances  
							
							
							
						 
						
							2013-11-19 12:59:46 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Antoine Pitrou 
								
							 
						 
						
							
							
							
							
								
							
							
								9ed5f27266 
								
							 
						 
						
							
							
								
								Issue  #18722 : Remove uses of the "register" keyword in C code.  
							
							
							
						 
						
							2013-08-13 20:18:52 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
							
							
								
							
							
								7660b880a5 
								
							 
						 
						
							
							
								
								Issue  #9566 : More long/Py_ssize_t fixes in tuple and list iterators (it_index)  
							
							
							
						 
						
							2013-06-24 23:59:24 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
							
							
								
							
							
								2199c38729 
								
							 
						 
						
							
							
								
								Issue  #9566 : Fix a compiler warning in tupleiter_setstate() on Windows x64  
							
							
							
						 
						
							2013-06-24 23:31:48 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
							
							
								
							
							
								a2d56984c7 
								
							 
						 
						
							
							
								
								Issuse  #17932 : Fix an integer overflow issue on Windows 64-bit in tuple  
							
							... 
							
							
							
							iterators: change the C type of tupleiterobject.it_index from long to
Py_ssize_t. 
							
						 
						
							2013-06-05 00:11:34 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Christian Heimes 
								
							 
						 
						
							
							
							
							
								
							
							
								34bdeb5d81 
								
							 
						 
						
							
							
								
								Add a comment about *not* caching the hash value. Issue  #9685  suggested to memorize the hash value, but the feature request was rejected because no speed ups were found.  
							
							
							
						 
						
							2013-01-07 21:24:18 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Gregory P. Smith 
								
							 
						 
						
							
							
							
							
								
							
							
								c2176e46d7 
								
							 
						 
						
							
							
								
								Fix the internals of our hash functions to used unsigned values during hash  
							
							... 
							
							
							
							computation as the overflow behavior of signed integers is undefined.
NOTE: This change is smaller compared to 3.2 as much of this cleanup had
already been done.  I added the comment that my change in 3.2 added so that the
code would match up.  Otherwise this just adds or synchronizes appropriate UL
designations on some constants to be pedantic.
In practice we require compiling everything with -fwrapv which forces overflow
to be defined as twos compliment but this keeps the code cleaner for checkers
or in the case where someone has compiled it without -fwrapv or their
compiler's equivalent.
Found by Clang trunk's Undefined Behavior Sanitizer (UBSan).
Cleanup only - no functionality or hash values change. 
							
						 
						
							2012-12-10 18:32:53 -08:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Gregory P. Smith 
								
							 
						 
						
							
							
							
							
								
							
							
								27cbcd6241 
								
							 
						 
						
							
							
								
								Fix the internals of our hash functions to used unsigned values during hash  
							
							... 
							
							
							
							computation as the overflow behavior of signed integers is undefined.
In practice we require compiling everything with -fwrapv which forces overflow
to be defined as twos compliment but this keeps the code cleaner for checkers
or in the case where someone has compiled it without -fwrapv or their
compiler's equivalent.
Found by Clang trunk's Undefined Behavior Sanitizer (UBSan).
Cleanup only - no functionality or hash values change. 
							
						 
						
							2012-12-10 18:15:46 -08:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Dickinson 
								
							 
						 
						
							
							
							
							
								
							
							
								c04ddff290 
								
							 
						 
						
							
							
								
								Issue  #16096 : Fix several occurrences of potential signed integer overflow.  Thanks Serhiy Storchaka.  
							
							
							
						 
						
							2012-10-06 18:04:49 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Christian Heimes 
								
							 
						 
						
							
							
							
							
								
							
							
								c4fe3fed6e 
								
							 
						 
						
							
							
								
								PyTuple_Pack() was missing va_end() in its error branch which lead to a resource leak.  
							
							
							
						 
						
							2012-09-10 02:55:13 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Christian Heimes 
								
							 
						 
						
							
							
							
							
								
							
							
								d5a88044a3 
								
							 
						 
						
							
							
								
								PyTuple_Pack() was missing va_end() in its error branch which lead to a resource leak.  
							
							
							
						 
						
							2012-09-10 02:54:51 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									David Malcolm 
								
							 
						 
						
							
							
							
							
								
							
							
								49526f48fc 
								
							 
						 
						
							
							
								
								Issue  #14785 : Add sys._debugmallocstats() to help debug low-level memory allocation issues  
							
							
							
						 
						
							2012-06-22 14:55:41 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Antoine Pitrou 
								
							 
						 
						
							
							
							
							
								
							
							
								a701388de1 
								
							 
						 
						
							
							
								
								Rename _PyIter_GetBuiltin to _PyObject_GetBuiltin, and do not include it in the stable ABI.  
							
							
							
						 
						
							2012-04-05 00:04:20 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Kristján Valur Jónsson 
								
							 
						 
						
							
							
							
							
								
							
							
								31668b8f7a 
								
							 
						 
						
							
							
								
								Issue  #14288 : Serialization support for builtin iterators.  
							
							
							
						 
						
							2012-04-03 10:49:41 +00:00