Samer El-Haj-Mahmoud 
							
						 
					 
					
						
						
							
						
						82f3edf26a 
					 
					
						
						
							
							MdeModulePkg: Remove event from protocol database only if registered  
						
						... 
						
						
						
						In a CloseEvent, an UnregisterProtocolNotify is done unconditionally.
There is a penalty associated with searching the protocol database on
every CloseEvent and impacts performance, especially during Network IO.
Unregister needs to be done only if the Event is for a RegisterProtocolNotify.
So extend the ExFlag in IEVENT to a UINT8 and define new flags that can
be set to indicate if the Event is part of a group, or registered on a
protocol notify. Then in CloseEvent, call UnregisterProtocolNotify only
if the register protocol notify flag is set.
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Samer El-Haj-Mahmoud <samer.el-haj-mahmoud@hpe.com >
Reviewed-by: Feng Tian <feng.tian@intel.com >
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@18517  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2015-09-21 01:53:34 +00:00 
						 
				 
			
				
					
						
							
							
								Eric Dong 
							
						 
					 
					
						
						
							
						
						4e1005eca7 
					 
					
						
						
							
							Update code to support VS2013 tool chain.  
						
						... 
						
						
						
						Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Eric Dong <eric.dong@intel.com >
Reviewed-by: Liming Gao <liming.gao@intel.com >
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15695  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2014-07-28 07:52:57 +00:00 
						 
				 
			
				
					
						
							
							
								Eric Dong 
							
						 
					 
					
						
						
							
						
						5fef1a3492 
					 
					
						
						
							
							Check the parameter before use it.  
						
						... 
						
						
						
						Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Eric Dong <eric.dong@intel.com >
Reviewed-by: Gao, Liming <liming,gao@intel.com >
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15425  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2014-04-01 05:55:06 +00:00 
						 
				 
			
				
					
						
							
							
								Shumin Qiu 
							
						 
					 
					
						
						
							
						
						5a7b9bbe08 
					 
					
						
						
							
							Add the missing status code in the returned table of InstallMultipleProtocolInterface().  
						
						... 
						
						
						
						Signed-off-by: Shumin Qiu <shumin.qiu@intel.com >
Reviewed-by: Liming Gao <liming.gao@intel.com >
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@14571  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2013-08-20 05:03:30 +00:00 
						 
				 
			
				
					
						
							
							
								lgao4 
							
						 
					 
					
						
						
							
						
						bc2dfdbcfc 
					 
					
						
						
							
							Add PI1.2.1 SAP2 support and UEFI231B mantis 896  
						
						... 
						
						
						
						1. Update SecurityManagementLib to support SAP2 and SAP services. 
2. Update SecurityStub driver to produce SAP2 and SAP protocol both.
3. Update DxeCore and SmmCore to use SAP2 and SAP service to verify Image.
4. Update DxeCore ConnectController() to use SAP2 service to check user permission. 
Signed-off-by: Liming Gao <liming.gao@intel.com >
Reviewed-by: Guo Dong <dong.guo@intel.com >
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13660  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2012-08-22 02:32:12 +00:00 
						 
				 
			
				
					
						
							
							
								niruiyu 
							
						 
					 
					
						
						
							
						
						4a23eaa9e0 
					 
					
						
						
							
							Fix the typo in InstallMultipleProtocolInterfaces comments  
						
						... 
						
						
						
						Signed-off-by: Ruiyu Ni<ruiyu.ni@intel.com >
Reviewed-by: Liming Gao<liming.gao@intel.com >
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13554  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2012-07-25 06:45:49 +00:00 
						 
				 
			
				
					
						
							
							
								niruiyu 
							
						 
					 
					
						
						
							
						
						284ee2e829 
					 
					
						
						
							
							Fix the comments to follow UEFI Spec regarding how to check an EFI_HANDLE is valid/invalid.  
						
						... 
						
						
						
						Signed-off-by: niruiyu
Reviewed-by: lgao4
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11987  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2011-07-06 03:55:36 +00:00 
						 
				 
			
				
					
						
							
							
								niruiyu 
							
						 
					 
					
						
						
							
						
						396e9039ae 
					 
					
						
						
							
							Add the DriverFamilyOverride support in DxeCore.  
						
						... 
						
						
						
						Signed-off-by: niruiyu
Reviewed-by: lgao4
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11698  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2011-05-24 03:32:42 +00:00 
						 
				 
			
				
					
						
							
							
								mdkinney 
							
						 
					 
					
						
						
							
						
						a36a9b3794 
					 
					
						
						
							
							Fix LocateDevicePath() to return proper error status code.  It was returning EFI_INVALID_PARAMETER if Device was NULL even if not handles matched the search criteria.  The proper behavior is to return EFI_NOT_FOUND if not handles match the search criteria, and only return EFI_INVALID_PARAMETER if at least one match is found and Device is NULL.  
						
						... 
						
						
						
						Also update function header comment block for LocateDevicePath() to match UEFI Specification.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11406  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2011-03-16 16:17:09 +00:00 
						 
				 
			
				
					
						
							
							
								ydong10 
							
						 
					 
					
						
						
							
						
						cd7bfc2c63 
					 
					
						
						
							
							Refine code to make code run safely.  
						
						... 
						
						
						
						git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10880  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2010-09-16 04:51:25 +00:00 
						 
				 
			
				
					
						
							
							
								hhtian 
							
						 
					 
					
						
						
							
						
						cd5ebaa06d 
					 
					
						
						
							
							Update the copyright notice format  
						
						... 
						
						
						
						git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10420  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2010-04-24 09:49:11 +00:00 
						 
				 
			
				
					
						
							
							
								rsun3 
							
						 
					 
					
						
						
							
						
						d2fbaaab17 
					 
					
						
						
							
							Add more code robustness check for modules under MdeModulePkg.  
						
						... 
						
						
						
						git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10108  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2010-02-26 08:53:27 +00:00 
						 
				 
			
				
					
						
							
							
								qhuang8 
							
						 
					 
					
						
						
							
						
						58125fb3f9 
					 
					
						
						
							
							Remove DEBUG_LOAD for InstallProtocolInterface() to align with PPI installation debug message in PeiCore.  
						
						... 
						
						
						
						git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9945  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2010-02-08 03:14:15 +00:00 
						 
				 
			
				
					
						
							
							
								qhuang8 
							
						 
					 
					
						
						
							
						
						81bf52d6d8 
					 
					
						
						
							
							Remove the error checking for multi-instance device path since Dxecore has been enhanced to handle that.  
						
						... 
						
						
						
						git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9295  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2009-09-21 14:35:01 +00:00 
						 
				 
			
				
					
						
							
							
								qhuang8 
							
						 
					 
					
						
						
							
						
						dc07b3d549 
					 
					
						
						
							
							Enhance DxeCore LocateDevicePath() boot service to handle muli-instance device path.  
						
						... 
						
						
						
						git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9294  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2009-09-21 14:26:05 +00:00 
						 
				 
			
				
					
						
							
							
								eric_tian 
							
						 
					 
					
						
						
							
						
						8bc18cc642 
					 
					
						
						
							
							fix the typo in DxeCore  
						
						... 
						
						
						
						git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8292  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2009-05-11 07:28:44 +00:00 
						 
				 
			
				
					
						
							
							
								qhuang8 
							
						 
					 
					
						
						
							
						
						bc6b5892b0 
					 
					
						
						
							
							Update DxeCore for the performance infrastructure updates: Use Raw sting to replace XXX_TOKEN  
						
						... 
						
						
						
						git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7567  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2009-02-23 03:01:59 +00:00 
						 
				 
			
				
					
						
							
							
								eric_tian 
							
						 
					 
					
						
						
							
						
						29dd3b04b0 
					 
					
						
						
							
							Fix Klocwork warning. We should directly return EFI_INVALID_PARAMETER when BufferSize is NULL.  
						
						... 
						
						
						
						git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7323  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2009-01-21 04:56:24 +00:00 
						 
				 
			
				
					
						
							
							
								qhuang8 
							
						 
					 
					
						
						
							
						
						f3f2e05db8 
					 
					
						
						
							
							Clean up to update the reference of the these macros:  
						
						... 
						
						
						
						EFI_SIGNATURE_16 -> SIGNATURE_16
  EFI_SIGNATURE_32 -> SIGNATURE_32
  EFI_SIGNATURE_64 -> SIGNATURE_64
  EFI_FIELD_OFFSET -> OFFSET_OF
  EFI_MAX_BIT      -> MAX_BIT
  EFI_MAX_ADDRESS  -> MAX_ADDRESS
These macros are not defined in UEFI spec. It makes more sense to use the equivalent macros in Base.h to avoid alias.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7056  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2008-12-16 15:34:21 +00:00 
						 
				 
			
				
					
						
							
							
								mdkinney 
							
						 
					 
					
						
						
							
						
						7cff25d649 
					 
					
						
						
							
							Measure time spent in Driver Binding Supported() calls  
						
						... 
						
						
						
						Update time measurement of StartImage() calls to properly record the handle of the started Image
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6292  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2008-10-30 04:03:59 +00:00 
						 
				 
			
				
					
						
							
							
								qhuang8 
							
						 
					 
					
						
						
							
						
						6e53646837 
					 
					
						
						
							
							Fix several coding style violations  
						
						... 
						
						
						
						git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6163  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2008-10-21 03:11:47 +00:00 
						 
				 
			
				
					
						
							
							
								eric_tian 
							
						 
					 
					
						
						
							
						
						ec90508b3d 
					 
					
						
						
							
							move header files in MdeModulePkg\Core\Dxe except DxeMain.h into their corresponding sub-module directories. It is used to provide good modularity.  
						
						... 
						
						
						
						git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5949  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2008-09-23 07:35:34 +00:00 
						 
				 
			
				
					
						
							
							
								qwang12 
							
						 
					 
					
						
						
							
						
						a70c0fd846 
					 
					
						
						
							
							Add VA_END to end the VA_START.  
						
						... 
						
						
						
						git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5907  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2008-09-17 02:30:24 +00:00 
						 
				 
			
				
					
						
							
							
								eric_tian 
							
						 
					 
					
						
						
							
						
						11074aabe1 
					 
					
						
						
							
							CoreHandleProtocol function description should be corrected.  
						
						... 
						
						
						
						git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5903  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2008-09-16 08:02:57 +00:00 
						 
				 
			
				
					
						
							
							
								qwang12 
							
						 
					 
					
						
						
							
						
						fa3c419fec 
					 
					
						
						
							
							Fix a bug by adding CoreReleaseProtocolLock.  
						
						... 
						
						
						
						git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5866  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2008-09-10 06:30:40 +00:00 
						 
				 
			
				
					
						
							
							
								qwang12 
							
						 
					 
					
						
						
							
						
						6c857d668c 
					 
					
						
						
							
							1) Update some comment.  
						
						... 
						
						
						
						2) Add in handle for the out_of_resource cases
3) Add in Done label to clean up the code.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5853  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2008-09-09 02:39:44 +00:00 
						 
				 
			
				
					
						
							
							
								qwang12 
							
						 
					 
					
						
						
							
						
						b9066aae25 
					 
					
						
						
							
							Change field Handle to type IHANDLE to remove the type casting.  
						
						... 
						
						
						
						git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5846  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2008-09-08 12:50:40 +00:00 
						 
				 
			
				
					
						
							
							
								qwang12 
							
						 
					 
					
						
						
							
						
						4008328a99 
					 
					
						
						
							
							Remove NULL_HANDLE. NULL_HANDLE should be replaced with NULL as consistency. For now, only DXE core is using this macro.  
						
						... 
						
						
						
						git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5836  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2008-09-08 05:02:38 +00:00 
						 
				 
			
				
					
						
							
							
								qhuang8 
							
						 
					 
					
						
						
							
						
						9c4ac31cca 
					 
					
						
						
							
							Clean up DxeCore to remove duplicate memory allocation & device path utility services in Library.c.DxeCore should use MemoryAllocationLib & DevicePathLib for these API.  
						
						... 
						
						
						
						Minor cleanup the coding style: #include <DxeMain.h> should be changed to #include "DxeMain.h" since "DxeMain.h" is not pubic header fie.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5742  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2008-08-27 14:29:23 +00:00 
						 
				 
			
				
					
						
							
							
								qhuang8 
							
						 
					 
					
						
						
							
						
						0e9b156ddc 
					 
					
						
						
							
							Remove the global variable of gDxeCoreBS and uses the gBS in UefiBootServicesTableLib for DXE Core.  
						
						... 
						
						
						
						git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5697  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2008-08-20 09:41:53 +00:00 
						 
				 
			
				
					
						
							
							
								qwang12 
							
						 
					 
					
						
						
							
						
						1439777e96 
					 
					
						
						
							
							1) Change DEBUG_ERROR TO DEBUG_LOAD as InstallProtocolInterface information is not an error.  
						
						... 
						
						
						
						2) Revert binary comparison for consistency.
3) Minor updates for comments.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5621  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2008-08-08 03:49:09 +00:00 
						 
				 
			
				
					
						
							
							
								qhuang8 
							
						 
					 
					
						
						
							
						
						443109389d 
					 
					
						
						
							
							Minor clean up.  
						
						... 
						
						
						
						git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5572  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2008-07-26 07:46:04 +00:00 
						 
				 
			
				
					
						
							
							
								qhuang8 
							
						 
					 
					
						
						
							
						
						022c6d45ef 
					 
					
						
						
							
							Code Scrub for Dxe Core.  
						
						... 
						
						
						
						git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5560  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2008-07-24 02:54:45 +00:00 
						 
				 
			
				
					
						
							
							
								qhuang8 
							
						 
					 
					
						
						
							
						
						e94a9ff727 
					 
					
						
						
							
							Code scrub for DxeCore  
						
						... 
						
						
						
						git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5520  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2008-07-18 09:50:09 +00:00 
						 
				 
			
				
					
						
							
							
								qhuang8 
							
						 
					 
					
						
						
							
						
						23c98c9417 
					 
					
						
						
							
							Update to fix minor coding style issues.  
						
						... 
						
						
						
						git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5256  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2008-05-21 01:40:12 +00:00 
						 
				 
			
				
					
						
							
							
								qhuang8 
							
						 
					 
					
						
						
							
						
						d614b00ae0 
					 
					
						
						
							
							Change the file name case to follow coding style: The first character should be capital.  
						
						... 
						
						
						
						git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5248  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2008-05-21 01:02:35 +00:00 
						 
				 
			
				
					
						
							
							
								qhuang8 
							
						 
					 
					
						
						
							
						
						7ad23c3cea 
					 
					
						
						
							
							Change the file name case to follow coding style: The first character should be capital.  
						
						... 
						
						
						
						git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5247  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2008-05-21 01:02:02 +00:00 
						 
				 
			
				
					
						
							
							
								qhuang8 
							
						 
					 
					
						
						
							
						
						162ed59443 
					 
					
						
						
							
							Add doxygen style comments for functions in DxeMain.  
						
						... 
						
						
						
						git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5189  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2008-05-09 07:08:30 +00:00 
						 
				 
			
				
					
						
							
							
								lgao4 
							
						 
					 
					
						
						
							
						
						504214c487 
					 
					
						
						
							
							Add comments and DoxyGen format for these files.  
						
						... 
						
						
						
						git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5028  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2008-04-09 07:07:50 +00:00 
						 
				 
			
				
					
						
							
							
								mdkinney 
							
						 
					 
					
						
						
							
						
						70279390ba 
					 
					
						
						
							
							Remove logic to repair image handles  
						
						... 
						
						
						
						Fix bug when new image handles are generated by Platform Driver Override or Bus Specific Driver Override
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@4374  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2007-12-10 00:43:22 +00:00 
						 
				 
			
				
					
						
							
							
								mdkinney 
							
						 
					 
					
						
						
							
						
						adc8840a25 
					 
					
						
						
							
							Update ConnectController() to convert an ImageHandle retrieved from the Platform Driver Override Protocol or the Bus Specific Driver Override Protocol into a set of Driver Binding Handles.  This is required if the ImageHandle produces more than one Driver Binding Handle or produces a Driver Binding Protocol on a handle other than the ImageHandle for the driver.  
						
						... 
						
						
						
						git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@4346  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2007-11-30 02:35:26 +00:00 
						 
				 
			
				
					
						
							
							
								mdkinney 
							
						 
					 
					
						
						
							
						
						8565806618 
					 
					
						
						
							
							1) Remove buffer overflow when the number of Driver Binding Protocols increases in the middle of ConnectController()  
						
						... 
						
						
						
						2) Remove possibility of getting a CR() macro ASSERT() when DisconnectController() is called during a recursive ConnectController()
3) Make sure the DeviceHandle field of the Loaded Image Protocol is always correct
4) Update Loaded Image Protocol logic to guarantee that the DeviceHandle and FilePath fields are correct the image is loaded from a buffer
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@3853  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2007-09-14 21:35:03 +00:00 
						 
				 
			
				
					
						
							
							
								yshang1 
							
						 
					 
					
						
						
							
						
						28a0029718 
					 
					
						
						
							
							Check in DxeCore for Nt32 platform. Currently, it does not follow PI/UEFI2.1.  
						
						... 
						
						
						
						git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@3045  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2007-07-04 10:51:54 +00:00