public static LabFactory getInstance()
  {
	INSTANCE_LOCK.readLock().lock();
	if (INSTANCE == null)
	{
	  INSTANCE_LOCK.readLock().unlock();
	  INSTANCE_LOCK.writeLock().lock();
	  try
	  {
		if (INSTANCE == null)
		{
		  INSTANCE = createInstance();
		}
	  }
	  finally
	  {
		INSTANCE_LOCK.writeLock().unlock();
	  }
	}
	else
	{
	  INSTANCE_LOCK.readLock().unlock();
	}
	return INSTANCE;
  }