_Z13createOptionsP18FuzzedDataProvider:
   55|     15|auto createOptions(FuzzedDataProvider* fdp) {
   56|     15|	auto opt1Str = fdp->ConsumeRandomLengthString(MaximumOptionByteCount);
   57|     15|	auto opt2Str = fdp->ConsumeRandomLengthString(MaximumOptionByteCount);
   58|     15|	auto opt3Str = fdp->ConsumeRandomLengthString(MaximumOptionByteCount);
   59|     15|	auto opt4Str = fdp->ConsumeRandomLengthString(MaximumOptionByteCount);
   60|     15|	auto opt5Str = fdp->ConsumeRandomLengthString(MaximumOptionByteCount);
   61|       |
   62|     15|	LogString opt1, opt2, opt3, opt4, opt5;
   63|       |
   64|     15|	Transcoder::decode(opt1Str, opt1);
   65|     15|	Transcoder::decode(opt2Str, opt2);
   66|     15|	Transcoder::decode(opt3Str, opt3);
   67|     15|	Transcoder::decode(opt4Str, opt4);
   68|     15|	Transcoder::decode(opt5Str, opt5);
   69|       |
   70|     15|	return std::vector<LogString>
   71|     15|		{ opt1
   72|     15|		, opt2
   73|     15|		, opt3
   74|     15|		, opt4
   75|     15|		, opt5
   76|     15|		};
   77|     15|}
LLVMFuzzerTestOneInput:
   79|     74|extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
   80|       |	// Create a FuzzedDataProvider which we will use to
   81|       |	// create strings from "data".
   82|     74|	FuzzedDataProvider fdp(data, size);
   83|       |
   84|     74|	auto loggerStr = fdp.ConsumeRandomLengthString(MaximumNameByteCount);
   85|     74|	auto contentStr = fdp.ConsumeRandomLengthString(MaximumOptionByteCount);
   86|       |
   87|     74|	LogString logger, content;
   88|     74|	Transcoder::decode(loggerStr, logger);
   89|     74|	Transcoder::decode(contentStr, content);
   90|       |
   91|       |	// Create the event
   92|     74|	auto level = Level::getInfo();
   93|       |
   94|     74|	Pool p;
   95|       |
   96|     74|	auto event = std::make_shared<LoggingEvent>(
   97|     74|			logger, level, content, LOG4CXX_LOCATION);
  ------------------
  |  |  171|     74|#define LOG4CXX_LOCATION ::LOG4CXX_NS::spi::LocationInfo(__FILE__,         \
  |  |  172|     74|	::LOG4CXX_NS::spi::LocationInfo::calcShortFileName(__FILE__), \
  |  |  173|     74|	__LOG4CXX_FUNC__, \
  |  |  ------------------
  |  |  |  |  159|     74|		#define __LOG4CXX_FUNC__ __PRETTY_FUNCTION__
  |  |  ------------------
  |  |  174|       |	__LINE__)
  ------------------
   98|       |	// Select a converter and invoke it.
   99|     74|	switch(fdp.ConsumeIntegralInRange<int>(0, 14)) {
  ------------------
  |  Branch (99:9): [True: 74, False: 0]
  ------------------
  100|     37|		case 0: {
  ------------------
  |  Branch (100:3): [True: 37, False: 37]
  ------------------
  101|     37|			auto nameStr = fdp.ConsumeRandomLengthString(MaximumNameByteCount);
  102|     37|			auto opionStr = fdp.ConsumeRandomLengthString(MaximumOptionByteCount);
  103|     37|			LogString name, option;
  104|     37|			Transcoder::decode(nameStr, name);
  105|     37|			Transcoder::decode(opionStr, option);
  106|       |
  107|     37|			PropertiesPatternConverter(name, option).format(event, logger, p);
  108|     37|			break;
  109|      0|		}
  110|      8|		case 1: {
  ------------------
  |  Branch (110:3): [True: 8, False: 66]
  ------------------
  111|      8|			LoggerPatternConverter(createOptions(&fdp)).format(event, logger, p);
  112|      8|			break;
  113|      0|		}
  114|      1|		case 2: {
  ------------------
  |  Branch (114:3): [True: 1, False: 73]
  ------------------
  115|      1|			ClassNamePatternConverter(createOptions(&fdp)).format(event, logger, p);
  116|      1|			break;
  117|      0|		}
  118|      6|		case 3: {
  ------------------
  |  Branch (118:3): [True: 6, False: 68]
  ------------------
  119|      6|			DatePatternConverter(createOptions(&fdp)).format(event, logger, p);
  120|      6|			break;
  121|      0|		}
  122|      6|		case 4: {
  ------------------
  |  Branch (122:3): [True: 6, False: 68]
  ------------------
  123|      6|			FullLocationPatternConverter().format(event, logger, p);
  124|      6|			break;
  125|      0|		}
  126|      2|		case 5: {
  ------------------
  |  Branch (126:3): [True: 2, False: 72]
  ------------------
  127|      2|			LineLocationPatternConverter().format(event, logger, p);
  128|      2|			break;
  129|      0|		}
  130|      0|		case 6: {
  ------------------
  |  Branch (130:3): [True: 0, False: 74]
  ------------------
  131|      0|			MessagePatternConverter().format(event, logger, p);
  132|      0|			break;
  133|      0|		}
  134|      6|		case 7: {
  ------------------
  |  Branch (134:3): [True: 6, False: 68]
  ------------------
  135|      6|			LineSeparatorPatternConverter().format(event, logger, p);
  136|      6|			break;
  137|      0|		}
  138|      1|		case 8: {
  ------------------
  |  Branch (138:3): [True: 1, False: 73]
  ------------------
  139|      1|			MethodLocationPatternConverter().format(event, logger, p);
  140|      1|			break;
  141|      0|		}
  142|      3|		case 9: {
  ------------------
  |  Branch (142:3): [True: 3, False: 71]
  ------------------
  143|      3|			LevelPatternConverter().format(event, logger, p);
  144|      3|		}
  145|      4|		case 10: {
  ------------------
  |  Branch (145:3): [True: 1, False: 73]
  ------------------
  146|      4|			RelativeTimePatternConverter().format(event, logger, p);
  147|      4|			break;
  148|      3|		}
  149|      0|		case 11: {
  ------------------
  |  Branch (149:3): [True: 0, False: 74]
  ------------------
  150|      0|			ThreadPatternConverter().format(event, logger, p);
  151|      0|			break;
  152|      3|		}
  153|      3|		case 12: {
  ------------------
  |  Branch (153:3): [True: 3, False: 71]
  ------------------
  154|      3|			ThreadUsernamePatternConverter().format(event, logger, p);
  155|      3|			break;
  156|      3|		}
  157|      0|		case 13: {
  ------------------
  |  Branch (157:3): [True: 0, False: 74]
  ------------------
  158|      0|			NDCPatternConverter().format(event, logger, p);
  159|      0|			break;
  160|      3|		}
  161|      0|		case 14: {
  ------------------
  |  Branch (161:3): [True: 0, False: 74]
  ------------------
  162|      0|			ThrowableInformationPatternConverter(fdp.ConsumeBool()).format(event, logger, p);
  163|      0|			break;
  164|      3|		}
  165|     74|	}
  166|     74|	return 0;
  167|     74|}

_ZN7log4cxx7helpers14APRInitializerC2Ev:
   96|      1|	m_priv(std::make_unique<APRInitializerPrivate>())
   97|      1|{
   98|      1|	apr_pool_create(&m_priv->p, NULL);
  ------------------
  |  |  323|      1|    apr_pool_create_ex(newpool, parent, NULL, NULL)
  ------------------
   99|      1|	m_priv->startTime = Date::currentTime();
  100|      1|#if APR_HAS_THREADS
  101|      1|	apr_status_t stat = apr_threadkey_private_create(&m_priv->tlsKey, tlsDestructImpl, m_priv->p);
  102|       |	assert(stat == APR_SUCCESS);
  ------------------
  |  Branch (102:2): [True: 1, False: 0]
  ------------------
  103|      1|#endif
  104|      1|}
_ZN7log4cxx7helpers14APRInitializerD2Ev:
  107|      1|{
  108|      1|#if LOG4CXX_ABI_VERSION <= 15
  109|      1|	isDestructed = true;
  110|      1|#endif
  111|      1|#if APR_HAS_THREADS
  112|      1|	std::lock_guard<std::mutex> lock(m_priv->mutex);
  113|      1|	apr_threadkey_private_delete(m_priv->tlsKey);
  114|      1|#endif
  115|      1|}
_ZN7log4cxx7helpers14APRInitializer11getInstanceEv:
  124|      4|{
  125|      4|	static WideLife<apr_environment> env;
  126|      4|	static WideLife<APRInitializer> init;
  127|      4|	return init;
  128|      4|}
_ZN7log4cxx7helpers14APRInitializer12getStartTimeEv:
  139|      4|{
  140|      4|	return getInstance().m_priv->startTime;
  141|      4|}
_ZN7log4cxx7helpers14APRInitializer21APRInitializerPrivateC2Ev:
   43|      1|		p(0),
   44|      1|		startTime(0),
   45|      1|		tlsKey(0){
   46|       |
   47|      1|	}
_ZN7log4cxx7helpers14APRInitializer21APRInitializerPrivateD2Ev:
   49|      1|	{
   50|       |		// Delete in reverse order
   51|      1|		while (!objects.empty())
  ------------------
  |  Branch (51:10): [True: 0, False: 1]
  ------------------
   52|      0|			objects.pop_back();
   53|      1|	}
aprinitializer.cpp:_ZN12_GLOBAL__N_115apr_environmentC2Ev:
   83|      1|    {
   84|      1|        apr_initialize();
   85|      1|    }
aprinitializer.cpp:_ZN12_GLOBAL__N_115apr_environmentD2Ev:
   87|      1|    {
   88|      1|        apr_terminate();
   89|      1|    }

_ZN7log4cxx7helpers11AsyncBufferC2Ev:
  106|     74|{}
_ZN7log4cxx7helpers11AsyncBufferD2Ev:
  118|     74|{
  119|     74|}

_ZN7log4cxx7pattern16CachedDateFormatC2ERKNSt3__110shared_ptrINS_7helpers10DateFormatEEEi:
  127|      6|	m_priv(std::make_unique<CachedDateFormatPriv>(dateFormat, expiration1))
  128|      6|{
  129|      6|	if (dateFormat == NULL)
  ------------------
  |  Branch (129:6): [True: 0, False: 6]
  ------------------
  130|      0|	{
  131|      0|		throw NullPointerException(LOG4CXX_STR("dateFormat"));
  ------------------
  |  |   51|      0|		#define LOG4CXX_STR(str) str
  ------------------
  132|      0|	}
  133|       |
  134|      6|	if (expiration1 < 0)
  ------------------
  |  Branch (134:6): [True: 0, False: 6]
  ------------------
  135|      0|	{
  136|      0|		throw IllegalArgumentException(LOG4CXX_STR("expiration must be non-negative"));
  ------------------
  |  |   51|      0|		#define LOG4CXX_STR(str) str
  ------------------
  137|      0|	}
  138|      6|}
_ZN7log4cxx7pattern16CachedDateFormatD2Ev:
  140|      6|CachedDateFormat::~CachedDateFormat() {}
_ZN7log4cxx7pattern16CachedDateFormat20findMillisecondStartElRKNSt3__112basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEERKNS2_10shared_ptrINS_7helpers10DateFormatEEE:
  155|      6|{
  156|       |
  157|      6|	log4cxx_time_t slotBegin = (time / 1000000) * 1000000;
  158|       |
  159|      6|	if (slotBegin > time)
  ------------------
  |  Branch (159:6): [True: 0, False: 6]
  ------------------
  160|      0|	{
  161|      0|		slotBegin -= 1000000;
  162|      0|	}
  163|       |
  164|      6|	int millis = (int) (time - slotBegin) / 1000;
  165|       |
  166|       |	// the magic numbers are in microseconds
  167|      6|	int magic = magic1;
  168|      6|	LogString magicString(magicString1);
  169|       |
  170|      6|	if (millis == magic1 / 1000)
  ------------------
  |  Branch (170:6): [True: 0, False: 6]
  ------------------
  171|      0|	{
  172|      0|		magic = magic2;
  173|      0|		magicString = magicString2;
  174|      0|	}
  175|       |
  176|      6|	LogString plusMagic;
  177|      6|	formatter->format(plusMagic, slotBegin + magic);
  178|       |
  179|       |	/**
  180|       |	 *   If the string lengths differ then
  181|       |	 *      we can't use the cache except for duplicate requests.
  182|       |	 */
  183|      6|	if (plusMagic.length() != formatted.length())
  ------------------
  |  Branch (183:6): [True: 0, False: 6]
  ------------------
  184|      0|	{
  185|      0|		return UNRECOGNIZED_MILLISECONDS;
  186|      0|	}
  187|      6|	else
  188|      6|	{
  189|       |		// find first difference between values
  190|  1.15k|		for (LogString::size_type i = 0; i < formatted.length(); i++)
  ------------------
  |  Branch (190:36): [True: 1.15k, False: 1]
  ------------------
  191|  1.15k|		{
  192|  1.15k|			if (formatted[i] != plusMagic[i])
  ------------------
  |  Branch (192:8): [True: 5, False: 1.14k]
  ------------------
  193|      5|			{
  194|       |				//
  195|       |				//   determine the expected digits for the base time
  196|      5|				const logchar abc[] = { 0x41, 0x42, 0x43, 0 };
  197|      5|				LogString formattedMillis(abc);
  198|      5|				millisecondFormat(millis, formattedMillis, 0);
  199|       |
  200|      5|				LogString plusZero;
  201|      5|				formatter->format(plusZero, slotBegin);
  202|       |
  203|       |				// Test if the next 1..3 characters match the magic string, main problem is that magic
  204|       |				// available millis in formatted can overlap. Therefore the current i is not always the
  205|       |				// index of the first millis char, but may be already within the millis. Besides that
  206|       |				// the millis can occur everywhere in formatted. See LOGCXX-420 and following.
  207|      5|				size_t  magicLength     = magicString.length();
  208|      5|				size_t  overlapping     = magicString.find(plusMagic[i]);
  209|      5|				int     possibleRetVal  = int(i - overlapping);
  210|       |
  211|      5|				if (plusZero.length() == formatted.length()
  ------------------
  |  Branch (211:9): [True: 2, False: 3]
  |  Branch (211:9): [True: 2, False: 3]
  ------------------
  212|      2|					&& regionMatches(magicString,       0, plusMagic,   possibleRetVal, magicLength)
  ------------------
  |  Branch (212:9): [True: 2, False: 0]
  ------------------
  213|      2|					&& regionMatches(formattedMillis,   0, formatted,   possibleRetVal, magicLength)
  ------------------
  |  Branch (213:9): [True: 2, False: 0]
  ------------------
  214|      2|					&& regionMatches(zeroString,        0, plusZero,    possibleRetVal, magicLength)
  ------------------
  |  Branch (214:9): [True: 2, False: 0]
  ------------------
  215|       |					// The following will and should fail for patterns with more than one SSS because
  216|       |					// we only seem to be able to change one SSS in e.g. format and need to reformat the
  217|       |					// whole string in other cases.
  218|      2|					&& (formatted.length() == possibleRetVal + magicLength
  ------------------
  |  Branch (218:10): [True: 1, False: 1]
  ------------------
  219|      1|						|| plusZero.compare(possibleRetVal + magicLength,
  ------------------
  |  Branch (219:10): [True: 1, False: 0]
  ------------------
  220|      1|							LogString::npos, plusMagic, possibleRetVal + magicLength, LogString::npos) == 0))
  221|      2|				{
  222|      2|					return possibleRetVal;
  223|      2|				}
  224|      3|				else
  225|      3|				{
  226|      3|					return UNRECOGNIZED_MILLISECONDS;
  227|      3|				}
  228|      5|			}
  229|  1.15k|		}
  230|      6|	}
  231|       |
  232|      1|	return NO_MILLISECONDS;
  233|      6|}
_ZNK7log4cxx7pattern16CachedDateFormat6formatERNSt3__112basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEElRNS_7helpers4PoolE:
  251|      6|{
  252|       |
  253|       |	//
  254|       |	// If the current requested time is identical to the previously
  255|       |	//     requested time, then append the cache contents.
  256|       |	//
  257|      6|	if (tm == m_priv->previousTime)
  ------------------
  |  Branch (257:6): [True: 0, False: 6]
  ------------------
  258|      0|	{
  259|      0|		toAppendTo.append(m_priv->cache);
  260|      0|		return;
  261|      0|	}
  262|       |
  263|       |	//
  264|       |	//   If millisecond pattern was not unrecognized
  265|       |	//     (that is if it was found or milliseconds did not appear)
  266|       |	//
  267|      6|	if (m_priv->millisecondStart != UNRECOGNIZED_MILLISECONDS)
  ------------------
  |  Branch (267:6): [True: 6, False: 0]
  ------------------
  268|      6|	{
  269|       |		//    Check if the cache is still valid.
  270|       |		//    If the requested time is within the same integral second
  271|       |		//       as the last request and a shorter expiration was not requested.
  272|      6|		if (tm < m_priv->slotBegin + m_priv->expiration
  ------------------
  |  Branch (272:7): [True: 0, False: 6]
  ------------------
  273|      0|			&& tm >= m_priv->slotBegin
  ------------------
  |  Branch (273:7): [True: 0, False: 0]
  ------------------
  274|      0|			&& tm < m_priv->slotBegin + 1000000L)
  ------------------
  |  Branch (274:7): [True: 0, False: 0]
  ------------------
  275|      0|		{
  276|       |			//
  277|       |			//    if there was a millisecond field then update it
  278|       |			//
  279|      0|			if (m_priv->millisecondStart >= 0)
  ------------------
  |  Branch (279:8): [True: 0, False: 0]
  ------------------
  280|      0|			{
  281|      0|				millisecondFormat((int) ((tm - m_priv->slotBegin) / 1000), m_priv->cache, m_priv->millisecondStart);
  282|      0|			}
  283|       |
  284|       |			//
  285|       |			//   update the previously requested time
  286|       |			//      (the slot begin should be unchanged)
  287|      0|			m_priv->previousTime = tm;
  288|      0|			toAppendTo.append(m_priv->cache);
  289|       |
  290|      0|			return;
  291|      0|		}
  292|      6|	}
  293|       |
  294|       |	//
  295|       |	//  could not use previous value.
  296|       |	//    Call underlying formatter to format date.
  297|      6|	m_priv->cache.erase(m_priv->cache.begin(), m_priv->cache.end());
  298|      6|	m_priv->formatter->format(m_priv->cache, tm);
  299|      6|	toAppendTo.append(m_priv->cache);
  300|      6|	m_priv->previousTime = tm;
  301|      6|	m_priv->slotBegin = (m_priv->previousTime / 1000000) * 1000000;
  302|       |
  303|      6|	if (m_priv->slotBegin > m_priv->previousTime)
  ------------------
  |  Branch (303:6): [True: 0, False: 6]
  ------------------
  304|      0|	{
  305|      0|		m_priv->slotBegin -= 1000000;
  306|      0|	}
  307|       |
  308|       |	//
  309|       |	//    if the milliseconds field was previous found
  310|       |	//       then reevaluate in case it moved.
  311|       |	//
  312|      6|	if (m_priv->millisecondStart >= 0)
  ------------------
  |  Branch (312:6): [True: 6, False: 0]
  ------------------
  313|      6|	{
  314|      6|		m_priv->millisecondStart = findMillisecondStart(tm, m_priv->cache, m_priv->formatter);
  315|      6|	}
  316|      6|}
_ZN7log4cxx7pattern16CachedDateFormat17millisecondFormatEiRNSt3__112basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEEi:
  328|      5|{
  329|      5|	buf[offset] = digits[millis / 100];
  330|      5|	buf[offset + 1] = digits[(millis / 10) % 10];
  331|      5|	buf[offset + 2] = digits[millis  % 10];
  332|      5|}
_ZN7log4cxx7pattern16CachedDateFormat23getMaximumCacheValidityERKNSt3__112basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEE:
  364|      5|{
  365|       |	//
  366|       |	//   If there are more "S" in the pattern than just one "SSS" then
  367|       |	//      (for example, "HH:mm:ss,SSS SSS"), then set the expiration to
  368|       |	//      one millisecond which should only perform duplicate request caching.
  369|       |	//
  370|      5|	const logchar S = 0x53;
  371|      5|	const logchar SSS[] = { 0x53, 0x53, 0x53, 0 };
  372|      5|	size_t firstS = pattern.find(S);
  373|      5|	size_t len = pattern.length();
  374|       |
  375|       |	//
  376|       |	//   if there are no S's or
  377|       |	//      three that start with the first S and no fourth S in the string
  378|       |	//
  379|      5|	if (firstS == LogString::npos ||
  ------------------
  |  Branch (379:6): [True: 1, False: 4]
  ------------------
  380|      4|		(len >= firstS + 3 && pattern.compare(firstS, 3, SSS) == 0
  ------------------
  |  Branch (380:4): [True: 4, False: 0]
  |  Branch (380:25): [True: 1, False: 3]
  ------------------
  381|      1|			&& (len == firstS + 3 ||
  ------------------
  |  Branch (381:8): [True: 0, False: 1]
  ------------------
  382|      1|				pattern.find(S, firstS + 3) == LogString::npos)))
  ------------------
  |  Branch (382:5): [True: 1, False: 0]
  ------------------
  383|      2|	{
  384|      2|		return 1000000;
  385|      2|	}
  386|       |
  387|      3|	return 1000;
  388|      5|}
_ZN7log4cxx7pattern16CachedDateFormat13regionMatchesERKNSt3__112basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEEmSA_mm:
  406|      6|{
  407|      6|	return target.compare(toffset, len, other, ooffset, len) == 0;
  408|      6|}
_ZN7log4cxx7pattern16CachedDateFormat20CachedDateFormatPrivC2ENSt3__110shared_ptrINS_7helpers10DateFormatEEEi:
   32|      6|		formatter(dateFormat),
   33|      6|		millisecondStart(0),
   34|      6|		slotBegin(std::numeric_limits<log4cxx_time_t>::min()),
   35|      6|		cache(50, 0x20),
   36|      6|		expiration(expiration1),
   37|      6|		previousTime(std::numeric_limits<log4cxx_time_t>::min())
   38|      6|	{}

_ZN7log4cxx7helpers5ClassC2Ev:
  100|    228|{
  101|    228|}
_ZN7log4cxx7helpers5Class11getRegistryEv:
  125|    228|{
  126|    228|	static WideLife<ClassMap> registry;
  127|    228|	return registry;
  128|    228|}
_ZN7log4cxx7helpers5Class13registerClassERKS1_:
  174|    228|{
  175|    228|	getRegistry()[StringHelper::toLowerCase(newClass.getName())] = &newClass;
  176|    228|	return true;
  177|    228|}

_ZN7log4cxx7pattern25ClassNamePatternConverterC1ERKNSt3__16vectorINS2_12basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS7_IS9_EEEE:
   32|      1|	NamePatternConverter(LOG4CXX_STR("Class Name"),
  ------------------
  |  |   51|      1|		#define LOG4CXX_STR(str) str
  ------------------
   33|      1|		LOG4CXX_STR("class name"), options)
  ------------------
  |  |   51|      1|		#define LOG4CXX_STR(str) str
  ------------------
   34|      1|{
   35|      1|}
_ZNK7log4cxx7pattern25ClassNamePatternConverter6formatERKNSt3__110shared_ptrINS_3spi12LoggingEventEEERNS2_12basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEERNS_7helpers4PoolE:
   44|      1|{
   45|      1|	int initialLength = (int)toAppendTo.length();
   46|      1|	append(toAppendTo, event->getLocationInformation().getClassName());
   47|      1|	abbreviate(initialLength, toAppendTo);
   48|      1|}

_ZN7log4cxx7helpers17ClassRegistrationC2EPFRKNS0_5ClassEvE:
   25|    228|{
   26|    228|	Class::registerClass((*accessor)());
   27|    228|}

_ZN7log4cxx7helpers4Date11currentTimeEv:
   67|     75|log4cxx_time_t Date::currentTime(){
   68|     75|	return getCurrentTimeFn ? getCurrentTimeFn() : getCurrentTimeStd();
  ------------------
  |  Branch (68:9): [True: 0, False: 75]
  ------------------
   69|     75|}
_ZN7log4cxx7helpers4Date17getCurrentTimeStdEv:
   71|     75|log4cxx_time_t Date::getCurrentTimeStd(){
   72|     75|	return std::chrono::duration_cast<std::chrono::microseconds>(std::chrono::system_clock::now().time_since_epoch()).count();
   73|     75|}

_ZN7log4cxx7helpers10DateFormatD2Ev:
   29|     12|DateFormat::~DateFormat() {}
_ZN7log4cxx7helpers10DateFormatC2Ev:
   38|     12|DateFormat::DateFormat() {}
_ZNK7log4cxx7helpers10DateFormat6formatERNSt3__112basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEEl:
   47|     23|{
   48|     23|	helpers::Pool p;
   49|     23|	format(toAppendTo, tm, p);
   50|     23|}

_ZN7log4cxx7pattern20DatePatternConverterC1ERKNSt3__16vectorINS2_12basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS7_IS9_EEEE:
   54|      6|	LoggingEventPatternConverter (std::make_unique<DatePatternConverterPrivate>(LOG4CXX_STR("Class Name"),
  ------------------
  |  |   51|      6|		#define LOG4CXX_STR(str) str
  ------------------
   55|      6|			LOG4CXX_STR("class name"), getDateFormat(options)))
  ------------------
  |  |   51|      6|		#define LOG4CXX_STR(str) str
  ------------------
   56|      6|{
   57|      6|}
_ZN7log4cxx7pattern20DatePatternConverterD2Ev:
   59|      6|DatePatternConverter::~DatePatternConverter() {}
_ZN7log4cxx7pattern20DatePatternConverter13getDateFormatERKNSt3__16vectorINS2_12basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS7_IS9_EEEE:
   62|      6|{
   63|      6|	DateFormatPtr df;
   64|      6|	int maximumCacheValidity = 1000000;
   65|       |
   66|      6|	if (options.size() == 0)
  ------------------
  |  Branch (66:6): [True: 0, False: 6]
  ------------------
   67|      0|	{
   68|      0|		df = std::make_shared<ISO8601DateFormat>();
   69|      0|	}
   70|      6|	else
   71|      6|	{
   72|      6|		LogString dateFormatStr(options[0]);
   73|       |
   74|      6|		if (dateFormatStr.empty() ||
  ------------------
  |  Branch (74:7): [True: 1, False: 5]
  ------------------
   75|      5|			StringHelper::equalsIgnoreCase(dateFormatStr,
  ------------------
  |  Branch (75:4): [True: 0, False: 5]
  ------------------
   76|      5|				LOG4CXX_STR("ISO8601"), LOG4CXX_STR("iso8601")))
  ------------------
  |  |   51|      5|		#define LOG4CXX_STR(str) str
  ------------------
              				LOG4CXX_STR("ISO8601"), LOG4CXX_STR("iso8601")))
  ------------------
  |  |   51|      5|		#define LOG4CXX_STR(str) str
  ------------------
   77|      1|		{
   78|      1|			df = std::make_shared<ISO8601DateFormat>();
   79|      1|		}
   80|      5|		else if (StringHelper::equalsIgnoreCase(dateFormatStr,
  ------------------
  |  Branch (80:12): [True: 0, False: 5]
  ------------------
   81|      5|				LOG4CXX_STR("ABSOLUTE"), LOG4CXX_STR("absolute")))
  ------------------
  |  |   51|      5|		#define LOG4CXX_STR(str) str
  ------------------
              				LOG4CXX_STR("ABSOLUTE"), LOG4CXX_STR("absolute")))
  ------------------
  |  |   51|      5|		#define LOG4CXX_STR(str) str
  ------------------
   82|      0|		{
   83|      0|			df = std::make_shared<AbsoluteTimeDateFormat>();
   84|      0|		}
   85|      5|		else if (StringHelper::equalsIgnoreCase(dateFormatStr,
  ------------------
  |  Branch (85:12): [True: 0, False: 5]
  ------------------
   86|      5|				LOG4CXX_STR("DATE"), LOG4CXX_STR("date")))
  ------------------
  |  |   51|      5|		#define LOG4CXX_STR(str) str
  ------------------
              				LOG4CXX_STR("DATE"), LOG4CXX_STR("date")))
  ------------------
  |  |   51|      5|		#define LOG4CXX_STR(str) str
  ------------------
   87|      0|		{
   88|      0|			df = std::make_shared<DateTimeDateFormat>();
   89|      0|		}
   90|      5|		else
   91|      5|		{
   92|      5|			if (dateFormatStr.find(0x25 /*'%'*/) == std::string::npos)
  ------------------
  |  Branch (92:8): [True: 5, False: 0]
  ------------------
   93|      5|			{
   94|      5|				try
   95|      5|				{
   96|      5|					df = std::make_shared<SimpleDateFormat>(dateFormatStr);
   97|      5|					maximumCacheValidity =
   98|      5|						CachedDateFormat::getMaximumCacheValidity(dateFormatStr);
   99|      5|				}
  100|      5|				catch (std::exception& e)
  101|      5|				{
  102|      0|					df = std::make_shared<ISO8601DateFormat>();
  103|      0|					LogLog::warn(((LogString)
  104|      0|							LOG4CXX_STR("Could not instantiate SimpleDateFormat with pattern "))
  ------------------
  |  |   51|      0|		#define LOG4CXX_STR(str) str
  ------------------
  105|      0|						+ dateFormatStr, e);
  106|      0|				}
  107|      5|			}
  108|      0|			else
  109|      0|			{
  110|      0|				df = std::make_shared<StrftimeDateFormat>(dateFormatStr);
  111|      0|			}
  112|      5|		}
  113|       |
  114|      6|		if (options.size() >= 2)
  ------------------
  |  Branch (114:7): [True: 6, False: 0]
  ------------------
  115|      6|		{
  116|      6|			TimeZonePtr tz;
  117|      6|			try
  118|      6|			{
  119|      6|				tz = TimeZone::getTimeZone(options[1]);
  120|      6|			}
  121|      6|			catch (std::exception& e)
  122|      6|			{
  123|      0|				LogLog::warn(LOG4CXX_STR("Invalid time zone: ") + options[1], e);
  ------------------
  |  |   51|      0|		#define LOG4CXX_STR(str) str
  ------------------
  124|      0|			}
  125|       |
  126|      6|			if (tz)
  ------------------
  |  Branch (126:8): [True: 6, False: 0]
  ------------------
  127|      6|			{
  128|      6|				df->setTimeZone(tz);
  129|      6|			}
  130|      6|		}
  131|      6|	}
  132|       |
  133|      6|	if (maximumCacheValidity > 0)
  ------------------
  |  Branch (133:6): [True: 6, False: 0]
  ------------------
  134|      6|	{
  135|      6|		df = std::make_shared<CachedDateFormat>(df, maximumCacheValidity);
  136|      6|	}
  137|       |
  138|      6|	return df;
  139|      6|}
_ZNK7log4cxx7pattern20DatePatternConverter6formatERKNSt3__110shared_ptrINS_3spi12LoggingEventEEERNS2_12basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEERNS_7helpers4PoolE:
  148|      6|{
  149|      6|	priv->df->format(toAppendTo, event->getTimeStamp());
  ------------------
  |  |   48|     12|#define priv static_cast<DatePatternConverterPrivate*>(m_priv.get())
  ------------------
  150|      6|}
_ZN7log4cxx7pattern20DatePatternConverter27DatePatternConverterPrivateC2ERKNSt3__112basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEESB_NS3_10shared_ptrINS_7helpers10DateFormatEEE:
   40|      6|		PatternConverterPrivate(name, style),
   41|      6|		df(_df) {}

_ZN7log4cxx7pattern14FormattingInfoC1Ebii:
   59|      1|	m_priv(std::make_unique<FormattingInfoPrivate>(leftAlign1, minLength1, maxLength1))
   60|      1|{
   61|      1|}
_ZN7log4cxx7pattern14FormattingInfoD2Ev:
   63|      1|FormattingInfo::~FormattingInfo() {}
_ZN7log4cxx7pattern14FormattingInfo10getDefaultEv:
   70|     77|{
   71|       |	static helpers::WideLife<FormattingInfoPtr> def= std::make_shared<FormattingInfo>(false, 0, INT_MAX);
   72|     77|	return def;
   73|     77|}
_ZN7log4cxx7pattern14FormattingInfo21FormattingInfoPrivateC2Ebii:
   29|      1|		minLength(minLength1),
   30|      1|		maxLength(maxLength1),
   31|      1|		leftAlign(leftAlign1) {}

_ZN7log4cxx7pattern28FullLocationPatternConverterC1Ev:
   32|      6|	LoggingEventPatternConverter(LOG4CXX_STR("Full Location"),
  ------------------
  |  |   51|      6|		#define LOG4CXX_STR(str) str
  ------------------
   33|      6|		LOG4CXX_STR("fullLocation"))
  ------------------
  |  |   51|      6|		#define LOG4CXX_STR(str) str
  ------------------
   34|      6|{
   35|      6|}
_ZNK7log4cxx7pattern28FullLocationPatternConverter6formatERKNSt3__110shared_ptrINS_3spi12LoggingEventEEERNS2_12basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEERNS_7helpers4PoolE:
   44|      6|{
   45|      6|	append(toAppendTo, event->getLocationInformation().getFileName());
   46|      6|	toAppendTo.append(1, (logchar) 0x28 /* '(' */);
   47|      6|	StringHelper::toString(
   48|      6|		event->getLocationInformation().getLineNumber(),
   49|      6|		toAppendTo);
   50|      6|	toAppendTo.append(1, (logchar) 0x29 /* ')' */);
   51|      6|}

_ZN7log4cxx5Level7getInfoEv:
   58|     74|{
   59|     74|	static WideLife<LevelPtr> infoLevel = std::make_shared<Level>(Level::INFO_INT, LOG4CXX_STR("INFO"), 6);
  ------------------
  |  |   51|     74|		#define LOG4CXX_STR(str) str
  ------------------
   60|     74|	return infoLevel;
   61|     74|}
_ZN7log4cxx5LevelC2EiRKNSt3__112basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEi:
   86|      1|	: level(level1), name(name1), syslogEquivalent(syslogEquivalent1)
   87|      1|{
   88|      1|}
_ZNK7log4cxx5Level8toStringEv:
   97|      3|{
   98|      3|	return name;
   99|      3|}

_ZN7log4cxx7pattern21LevelPatternConverterC1Ev:
   33|      3|	LoggingEventPatternConverter(LOG4CXX_STR("Level"),
  ------------------
  |  |   51|      3|		#define LOG4CXX_STR(str) str
  ------------------
   34|      3|		LOG4CXX_STR("level"))
  ------------------
  |  |   51|      3|		#define LOG4CXX_STR(str) str
  ------------------
   35|      3|{
   36|      3|}
_ZNK7log4cxx7pattern21LevelPatternConverter6formatERKNSt3__110shared_ptrINS_3spi12LoggingEventEEERNS2_12basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEERNS_7helpers4PoolE:
   45|      3|{
   46|      3|	toAppendTo.append(event->getLevel()->toString());
   47|      3|}

_ZN7log4cxx7pattern28LineLocationPatternConverterC1Ev:
   32|      2|	LoggingEventPatternConverter(LOG4CXX_STR("Line"),
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
   33|      2|		LOG4CXX_STR("line"))
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
   34|      2|{
   35|      2|}
_ZNK7log4cxx7pattern28LineLocationPatternConverter6formatERKNSt3__110shared_ptrINS_3spi12LoggingEventEEERNS2_12basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEERNS_7helpers4PoolE:
   44|      2|{
   45|      2|	StringHelper::toString(
   46|      2|		event->getLocationInformation().getLineNumber(),
   47|      2|		toAppendTo);
   48|      2|}

_ZN7log4cxx7pattern29LineSeparatorPatternConverterC1Ev:
   31|      6|	LoggingEventPatternConverter(LOG4CXX_STR("Line Sep"),
  ------------------
  |  |   51|      6|		#define LOG4CXX_STR(str) str
  ------------------
   32|      6|		LOG4CXX_STR("lineSep"))
  ------------------
  |  |   51|      6|		#define LOG4CXX_STR(str) str
  ------------------
   33|      6|{
   34|      6|}
_ZNK7log4cxx7pattern29LineSeparatorPatternConverter6formatERKNSt3__110shared_ptrINS_3spi12LoggingEventEEERNS2_12basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEERNS_7helpers4PoolE:
   43|      6|{
   44|      6|	toAppendTo.append(LOG4CXX_EOL);
  ------------------
  |  |   68|      6|		#define LOG4CXX_EOL LOG4CXX_STR("\x0A")
  |  |  ------------------
  |  |  |  |   51|      6|		#define LOG4CXX_STR(str) str
  |  |  ------------------
  ------------------
   45|      6|}

_ZN7log4cxx3spi12LocationInfoC2EPKcS3_S3_i:
   47|     74|	:  lineNumber( lineNumber1 ),
   48|     74|	   fileName( fileName1 ? fileName1 : LocationInfo::NA ),
  ------------------
  |  Branch (48:15): [True: 74, False: 0]
  ------------------
   49|     74|	   shortFileName(shortFileName1 ? shortFileName1 : LocationInfo::NA ),
  ------------------
  |  Branch (49:19): [True: 74, False: 0]
  ------------------
   50|     74|	   methodName( methodName1 ? methodName1 : LocationInfo::NA_METHOD )
  ------------------
  |  Branch (50:17): [True: 74, False: 0]
  ------------------
   51|     74|{
   52|     74|}
_ZN7log4cxx3spi12LocationInfoC2ERKS1_:
   70|     74|	:  lineNumber( src.lineNumber ),
   71|     74|	   fileName( src.fileName ),
   72|     74|	   shortFileName( src.shortFileName ),
   73|     74|	   methodName( src.methodName )
   74|     74|{
   75|     74|}
_ZNK7log4cxx3spi12LocationInfo11getFileNameEv:
  107|      6|{
  108|      6|	return fileName;
  109|      6|}
_ZNK7log4cxx3spi12LocationInfo13getLineNumberEv:
  120|      8|{
  121|      8|	return lineNumber;
  122|      8|}
_ZNK7log4cxx3spi12LocationInfo13getMethodNameEv:
  126|      1|{
  127|      1|	std::string tmp(methodName);
  128|      1|	size_t parenPos = tmp.find('(');
  129|       |
  130|      1|	if (parenPos != std::string::npos)
  ------------------
  |  Branch (130:6): [True: 1, False: 0]
  ------------------
  131|      1|	{
  132|      1|		tmp.erase(parenPos);
  133|      1|	}
  134|       |
  135|      1|	size_t colonPos = tmp.rfind("::");
  136|       |
  137|      1|	if (colonPos != std::string::npos)
  ------------------
  |  Branch (137:6): [True: 0, False: 1]
  ------------------
  138|      0|	{
  139|      0|		tmp.erase(0, colonPos + 2);
  140|      0|	}
  141|      1|	else
  142|      1|	{
  143|      1|		size_t spacePos = tmp.find(' ');
  144|       |
  145|      1|		if (spacePos != std::string::npos)
  ------------------
  |  Branch (145:7): [True: 1, False: 0]
  ------------------
  146|      1|		{
  147|      1|			tmp.erase(0, spacePos + 1);
  148|      1|		}
  149|      1|	}
  150|       |
  151|      1|	return tmp;
  152|      1|}
_ZNK7log4cxx3spi12LocationInfo12getClassNameEv:
  156|      1|{
  157|      1|	std::string tmp(methodName);
  158|      1|	size_t parenPos = tmp.find('(');
  159|       |
  160|      1|	if (parenPos != std::string::npos)
  ------------------
  |  Branch (160:6): [True: 1, False: 0]
  ------------------
  161|      1|	{
  162|      1|		tmp.erase(parenPos);
  163|      1|	}
  164|       |
  165|      1|	size_t colonPos = tmp.rfind("::");
  166|       |
  167|      1|	if (colonPos != std::string::npos)
  ------------------
  |  Branch (167:6): [True: 0, False: 1]
  ------------------
  168|      0|	{
  169|      0|		tmp.erase(colonPos);
  170|      0|		size_t spacePos = tmp.find_last_of(' ');
  171|       |
  172|      0|		if (spacePos != std::string::npos)
  ------------------
  |  Branch (172:7): [True: 0, False: 0]
  ------------------
  173|      0|		{
  174|      0|			tmp.erase(0, spacePos + 1);
  175|      0|		}
  176|       |
  177|      0|		return tmp;
  178|      0|	}
  179|       |
  180|      1|	tmp.erase(0, tmp.length() );
  181|      1|	return tmp;
  182|      1|}

_ZN7log4cxx7pattern22LoggerPatternConverterC1ERKNSt3__16vectorINS2_12basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS7_IS9_EEEE:
   32|      8|	NamePatternConverter(LOG4CXX_STR("Logger"),
  ------------------
  |  |   51|      8|		#define LOG4CXX_STR(str) str
  ------------------
   33|      8|		LOG4CXX_STR("logger"), options)
  ------------------
  |  |   51|      8|		#define LOG4CXX_STR(str) str
  ------------------
   34|      8|{
   35|      8|}
_ZNK7log4cxx7pattern22LoggerPatternConverter6formatERKNSt3__110shared_ptrINS_3spi12LoggingEventEEERNS2_12basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEERNS_7helpers4PoolE:
   44|      8|{
   45|      8|	int initialLength = (int)toAppendTo.length();
   46|      8|	toAppendTo.append(event->getLoggerName());
   47|      8|	abbreviate(initialLength, toAppendTo);
   48|      8|}

_ZN7log4cxx3spi12LoggingEvent12getStartTimeEv:
  214|      4|{
  215|      4|	return APRInitializer::getStartTime();
  216|      4|}
_ZN7log4cxx3spi12LoggingEventC1ERKNSt3__112basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEERKNS2_10shared_ptrINS_5LevelEEESA_RKNS0_12LocationInfoE:
  246|     74|	m_priv(std::make_unique<LoggingEventPrivate>(logger1, level1, message1, locationInfo1))
  247|     74|{
  248|     74|}
_ZN7log4cxx3spi12LoggingEventD2Ev:
  251|     74|{
  252|     74|}
_ZNK7log4cxx3spi12LoggingEvent17getThreadUserNameEv:
  255|      3|{
  256|      3|	return m_priv->pNames->threadName;
  257|      3|}
_ZNK7log4cxx3spi12LoggingEvent6getMDCERKNSt3__112basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEERS8_:
  276|     37|{
  277|     37|	bool result = false;
  278|       |	// Use the copy of the diagnostic context if it exists.
  279|       |	// Otherwise use the MDC that is associated with the thread.
  280|     37|	if (m_priv->dc)
  ------------------
  |  Branch (280:6): [True: 0, False: 37]
  ------------------
  281|      0|	{
  282|      0|		auto& map = m_priv->dc->map;
  283|      0|		auto it = map.find(key);
  284|      0|		if (it != map.end() && !it->second.empty())
  ------------------
  |  Branch (284:7): [True: 0, False: 0]
  |  Branch (284:7): [True: 0, False: 0]
  |  Branch (284:26): [True: 0, False: 0]
  ------------------
  285|      0|		{
  286|      0|			dest.append(it->second);
  287|      0|			result = true;
  288|      0|		}
  289|      0|	}
  290|     37|	else
  291|     37|		result = MDC::get(key, dest);
  292|     37|	return result;
  293|     37|}
_ZNK7log4cxx3spi12LoggingEvent8getLevelEv:
  380|      3|{
  381|      3|	return m_priv->level;
  382|      3|}
_ZNK7log4cxx3spi12LoggingEvent13getLoggerNameEv:
  385|      8|{
  386|      8|	return m_priv->logger;
  387|      8|}
_ZNK7log4cxx3spi12LoggingEvent12getTimeStampEv:
  406|     10|{
  407|     10|	return m_priv->timeStamp;
  408|     10|}
_ZNK7log4cxx3spi12LoggingEvent22getLocationInformationEv:
  411|     16|{
  412|     16|	return m_priv->locationInfo;
  413|     16|}
_ZN7log4cxx3spi12LoggingEvent19LoggingEventPrivateD2Ev:
  107|     74|	{
  108|     74|		delete properties;
  109|     74|	}
_ZN7log4cxx3spi12LoggingEvent19LoggingEventPrivateC2ERKNSt3__112basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEERKNS3_10shared_ptrINS_5LevelEEESB_RKNS0_12LocationInfoERKNSC_INS_7helpers18ThreadSpecificData8NamePairEEE:
   95|     74|		logger(logger1),
   96|     74|		level(level1),
   97|     74|		message(message1),
   98|     74|		timeStamp(Date::currentTime()),
   99|     74|		locationInfo(locationInfo1),
  100|     74|		chronoTimeStamp(std::chrono::microseconds(timeStamp)),
  101|     74|		pNames(p),
  102|     74|		renderState(RenderingCompleted)
  103|     74|	{
  104|     74|	}

_ZN7log4cxx7pattern28LoggingEventPatternConverterC2ERKNSt3__112basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEESA_:
   33|     25|	const LogString& name1, const LogString& style1) : PatternConverter(name1, style1)
   34|     25|{
   35|     25|}
_ZN7log4cxx7pattern28LoggingEventPatternConverterC2ENSt3__110unique_ptrINS0_16PatternConverter23PatternConverterPrivateENS2_14default_deleteIS5_EEEE:
   38|     52|	PatternConverter (std::move(priv))
   39|     52|{
   40|       |
   41|     52|}

_ZN7log4cxx3MDC3getERKNSt3__112basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEERS7_:
   56|     37|{
   57|     37|	ThreadSpecificData* data = ThreadSpecificData::getCurrentData();
   58|       |
   59|     37|	if (data != 0)
  ------------------
  |  Branch (59:6): [True: 37, False: 0]
  ------------------
   60|     37|	{
   61|     37|		Map& map = data->getMap();
   62|       |
   63|     37|		Map::iterator it = map.find(key);
   64|       |
   65|     37|		if (it != map.end())
  ------------------
  |  Branch (65:7): [True: 0, False: 37]
  ------------------
   66|      0|		{
   67|      0|			value.append(it->second);
   68|      0|			return true;
   69|      0|		}
   70|       |
   71|     37|		data->recycle();
   72|     37|	}
   73|       |
   74|     37|	return false;
   75|     37|}

_ZN7log4cxx7pattern30MethodLocationPatternConverterC1Ev:
   31|      1|	LoggingEventPatternConverter(LOG4CXX_STR("Method"),
  ------------------
  |  |   51|      1|		#define LOG4CXX_STR(str) str
  ------------------
   32|      1|		LOG4CXX_STR("method"))
  ------------------
  |  |   51|      1|		#define LOG4CXX_STR(str) str
  ------------------
   33|      1|{
   34|      1|}
_ZNK7log4cxx7pattern30MethodLocationPatternConverter6formatERKNSt3__110shared_ptrINS_3spi12LoggingEventEEERNS2_12basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEERNS_7helpers4PoolE:
   43|      1|{
   44|      1|	append(toAppendTo, event->getLocationInformation().getMethodName());
   45|      1|}

_ZN7log4cxx7pattern15NameAbbreviatorC2Ev:
   33|      9|{
   34|      9|}
_ZN7log4cxx7pattern15NameAbbreviatorD2Ev:
   37|      9|{
   38|      9|}
_ZN7log4cxx7pattern15NameAbbreviator14getAbbreviatorERKNSt3__112basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEE:
  295|      9|{
  296|      9|	if (pattern.length() > 0)
  ------------------
  |  Branch (296:6): [True: 9, False: 0]
  ------------------
  297|      9|	{
  298|       |		//  if pattern is just spaces and numbers then
  299|       |		//     use MaxElementAbbreviator
  300|      9|		LogString trimmed(StringHelper::trim(pattern));
  301|       |
  302|      9|		if (trimmed.length() == 0)
  ------------------
  |  Branch (302:7): [True: 0, False: 9]
  ------------------
  303|      0|		{
  304|      0|			return getDefaultAbbreviator();
  305|      0|		}
  306|       |
  307|      9|		LogString::size_type i = 0;
  308|       |
  309|      9|		while (
  310|      9|			(i < trimmed.length()) && (trimmed[i] >= 0x30 /* '0' */)
  ------------------
  |  Branch (310:4): [True: 9, False: 0]
  |  Branch (310:30): [True: 1, False: 8]
  ------------------
  311|      1|			&& (trimmed[i] <= 0x39 /* '9' */))
  ------------------
  |  Branch (311:7): [True: 0, False: 1]
  ------------------
  312|      0|		{
  313|      0|			i++;
  314|      0|		}
  315|       |
  316|       |		//
  317|       |		//  if all blanks and digits
  318|       |		//
  319|      9|		if (i == trimmed.length())
  ------------------
  |  Branch (319:7): [True: 0, False: 9]
  ------------------
  320|      0|		{
  321|      0|			int len = 256;
  322|      0|			try
  323|      0|			{
  324|      0|				len = StringHelper::toInt(trimmed);
  325|      0|			}
  326|      0|			catch (const std::out_of_range& ex)
  327|      0|			{
  328|      0|				LogLog::warn(LOG4CXX_STR("Invalid name abreviator pattern: ") + pattern, ex);
  ------------------
  |  |   51|      0|		#define LOG4CXX_STR(str) str
  ------------------
  329|      0|			}
  330|       |
  331|      0|			if(len > 256){
  ------------------
  |  Branch (331:7): [True: 0, False: 0]
  ------------------
  332|      0|				len = 256;
  333|      0|			}else if( len < 0 ){
  ------------------
  |  Branch (333:14): [True: 0, False: 0]
  ------------------
  334|      0|				len = 0;
  335|      0|			}
  336|       |
  337|      0|			return std::make_shared<MaxElementAbbreviator>(len);
  338|      0|		}
  339|       |
  340|      9|		std::vector<PatternAbbreviatorFragment> fragments;
  341|      9|		logchar ellipsis;
  342|      9|		int charCount;
  343|      9|		LogString::size_type pos = 0;
  344|       |
  345|      9|		while (pos < trimmed.length())
  ------------------
  |  Branch (345:10): [True: 9, False: 0]
  ------------------
  346|      9|		{
  347|      9|			LogString::size_type ellipsisPos = pos;
  348|       |
  349|      9|			if (trimmed[pos] == 0x2A /* '*' */)
  ------------------
  |  Branch (349:8): [True: 0, False: 9]
  ------------------
  350|      0|			{
  351|      0|				charCount = INT_MAX;
  352|      0|				ellipsisPos++;
  353|      0|			}
  354|      9|			else
  355|      9|			{
  356|      9|				if ((trimmed[pos] >= 0x30 /* '0' */)
  ------------------
  |  Branch (356:9): [True: 1, False: 8]
  ------------------
  357|      1|					&& (trimmed[pos] <= 0x39 /* '9' */))
  ------------------
  |  Branch (357:9): [True: 0, False: 1]
  ------------------
  358|      0|				{
  359|      0|					charCount = trimmed[pos] - 0x30 /* '0' */;
  360|      0|					ellipsisPos++;
  361|      0|				}
  362|      9|				else
  363|      9|				{
  364|      9|					charCount = 0;
  365|      9|				}
  366|      9|			}
  367|       |
  368|      9|			ellipsis = 0;
  369|       |
  370|      9|			if (ellipsisPos < trimmed.length())
  ------------------
  |  Branch (370:8): [True: 9, False: 0]
  ------------------
  371|      9|			{
  372|      9|				ellipsis = trimmed[ellipsisPos];
  373|       |
  374|      9|				if (ellipsis == 0x2E /* '.' */)
  ------------------
  |  Branch (374:9): [True: 0, False: 9]
  ------------------
  375|      0|				{
  376|      0|					ellipsis = 0;
  377|      0|				}
  378|      9|			}
  379|       |
  380|      9|			fragments.push_back(PatternAbbreviatorFragment(charCount, ellipsis));
  381|      9|			pos = trimmed.find(0x2E /* '.' */, pos);
  382|       |
  383|      9|			if (pos == LogString::npos)
  ------------------
  |  Branch (383:8): [True: 9, False: 0]
  ------------------
  384|      9|			{
  385|      9|				break;
  386|      9|			}
  387|       |
  388|      0|			pos++;
  389|      0|		}
  390|       |
  391|      9|		return std::make_shared<PatternAbbreviator>(fragments);
  392|      9|	}
  393|       |
  394|       |	//
  395|       |	//  no matching abbreviation, return defaultAbbreviator
  396|       |	//
  397|      0|	return getDefaultAbbreviator();
  398|      9|}
_ZN7log4cxx7pattern26PatternAbbreviatorFragmentC2ERKS1_:
  156|     18|			: charCount(src.charCount), ellipsis(src.ellipsis)
  157|     18|		{
  158|     18|		}
_ZN7log4cxx7pattern26PatternAbbreviatorFragmentC2Eic:
  148|      9|			: charCount(charCount1), ellipsis(ellipsis1)
  149|      9|		{
  150|      9|		}
_ZNK7log4cxx7pattern18PatternAbbreviator10abbreviateEmRNSt3__112basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEE:
  267|      9|		{
  268|       |			//
  269|       |			//  all non-terminal patterns are executed once
  270|       |			//
  271|      9|			LogString::size_type pos = nameStart;
  272|       |
  273|      9|			for (LogString::size_type i = 0; (i < (fragments.size() - 1)) && (pos < buf.length());
  ------------------
  |  Branch (273:37): [True: 0, False: 9]
  |  Branch (273:69): [True: 0, False: 0]
  ------------------
  274|      9|				i++)
  275|      0|			{
  276|      0|				pos = fragments[i].abbreviate(buf, pos);
  277|      0|			}
  278|       |
  279|       |			//
  280|       |			//   apply the last pattern to all the remaining name parts
  281|       |			//
  282|      9|			fragments.back().abbreviateAll(buf, pos);
  283|      9|		}
_ZNK7log4cxx7pattern26PatternAbbreviatorFragment13abbreviateAllERNSt3__112basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEEm:
  203|      9|		{
  204|      9|			logchar separ = 0x2E; /* '.' */
  205|      9|			LogString abbreviation;
  206|      9|			abbreviation.reserve(buf.length());
  207|      9|			auto pos = startPos;
  208|      9|			LogString::size_type nextDot;
  209|     32|			while (pos < buf.length() && buf.npos != (nextDot = buf.find(separ, pos)))
  ------------------
  |  Branch (209:11): [True: 31, False: 1]
  |  Branch (209:33): [True: 23, False: 8]
  ------------------
  210|     23|			{
  211|     23|				if (pos + charCount < nextDot)
  ------------------
  |  Branch (211:9): [True: 16, False: 7]
  ------------------
  212|     16|				{
  213|     16|					abbreviation.append(buf.begin() + pos, buf.begin() + (pos + charCount));
  214|     16|					if (ellipsis != 0x00)
  ------------------
  |  Branch (214:10): [True: 3, False: 13]
  ------------------
  215|      3|						abbreviation.append(1, ellipsis);
  216|     16|				}
  217|      7|				else
  218|      7|					abbreviation.append(buf.begin() + pos, buf.begin() + nextDot);
  219|     23|				abbreviation.append(1, separ);
  220|     23|				pos = nextDot + 1;
  221|     23|			}
  222|      9|			if (pos < buf.length())
  ------------------
  |  Branch (222:8): [True: 8, False: 1]
  ------------------
  223|      8|				abbreviation.append(buf.begin() + pos, buf.end());
  224|      9|			buf.erase(buf.begin() + startPos, buf.end());
  225|      9|			buf.append(abbreviation);
  226|      9|		}
_ZN7log4cxx7pattern18PatternAbbreviatorC2ERKNSt3__16vectorINS0_26PatternAbbreviatorFragmentENS2_9allocatorIS4_EEEE:
  253|      9|			fragments(fragments1)
  254|      9|		{
  255|      9|			if (fragments1.size() == 0)
  ------------------
  |  Branch (255:8): [True: 0, False: 9]
  ------------------
  256|      0|			{
  257|      0|				throw IllegalArgumentException(LOG4CXX_STR("fragments parameter must contain at least one element"));
  ------------------
  |  |   51|      0|		#define LOG4CXX_STR(str) str
  ------------------
  258|      0|			}
  259|      9|		}

_ZN7log4cxx7pattern20NamePatternConverterC2ERKNSt3__112basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEESA_RKNS2_6vectorIS8_NS6_IS8_EEEE:
   48|      9|	LoggingEventPatternConverter(std::make_unique<NamePatternConverterPrivate>(name1, style1,
   49|      9|			getAbbreviator(options)))
   50|      9|{
   51|      9|}
_ZN7log4cxx7pattern20NamePatternConverter14getAbbreviatorERKNSt3__16vectorINS2_12basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEENS7_IS9_EEEE:
   55|      9|{
   56|      9|	if (options.size() > 0)
  ------------------
  |  Branch (56:6): [True: 9, False: 0]
  ------------------
   57|      9|	{
   58|      9|		return NameAbbreviator::getAbbreviator(options[0]);
   59|      9|	}
   60|       |
   61|      0|	return NameAbbreviator::getDefaultAbbreviator();
   62|      9|}
_ZNK7log4cxx7pattern20NamePatternConverter10abbreviateEmRNSt3__112basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEE:
   70|      9|{
   71|      9|	priv->abbreviator->abbreviate(nameStart, buf);
  ------------------
  |  |   28|     18|#define priv static_cast<NamePatternConverterPrivate*>(m_priv.get())
  ------------------
   72|      9|}
_ZN7log4cxx7pattern20NamePatternConverter27NamePatternConverterPrivateC2ERKNSt3__112basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEESB_NS3_10shared_ptrINS0_15NameAbbreviatorEEE:
   33|      9|		PatternConverterPrivate( name, style ),
   34|      9|		abbreviator(abbrev) {}

_ZN7log4cxx7pattern16PatternConverterC2ENSt3__110unique_ptrINS1_23PatternConverterPrivateENS2_14default_deleteIS4_EEEE:
   31|     52|	m_priv(std::move(priv))
   32|     52|{
   33|     52|}
_ZN7log4cxx7pattern16PatternConverterC2ERKNSt3__112basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEESA_:
   37|     25|	m_priv(std::make_unique<PatternConverterPrivate>(name, style))
   38|     25|{
   39|       |
   40|     25|}
_ZN7log4cxx7pattern16PatternConverterD2Ev:
   43|     77|{
   44|     77|}
_ZN7log4cxx7pattern16PatternConverter6appendERNSt3__112basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEERKS8_:
   57|      8|{
   58|      8|	LOG4CXX_DECODE_CHAR(decoded, src);
  ------------------
  |  |  297|      8|	LOG4CXX_NS::LogString var;                      \
  |  |  298|      8|	LOG4CXX_NS::helpers::Transcoder::decode(src, var)
  ------------------
   59|      8|	toAppendTo.append(decoded);
   60|      8|}

_ZN7log4cxx7helpers4PoolC2Ev:
   33|    114|Pool::Pool() : pool(0), release(true)
   34|    114|{
   35|    114|}
_ZN7log4cxx7helpers4PoolD2Ev:
   43|    114|{
   44|    114|	if (pool && release)
  ------------------
  |  Branch (44:6): [True: 0, False: 114]
  |  Branch (44:14): [True: 0, False: 0]
  ------------------
   45|      0|	{
   46|      0|		apr_pool_destroy(pool);
   47|      0|	}
   48|    114|}

_ZN7log4cxx7pattern26PropertiesPatternConverterC1ERKNSt3__112basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEESA_:
   49|     37|	LoggingEventPatternConverter(
   50|     37|		std::make_unique<PropertiesPatternConverterPrivate>(name1, LOG4CXX_STR("property"), propertyName))
  ------------------
  |  |   51|     37|		#define LOG4CXX_STR(str) str
  ------------------
   51|     37|{
   52|     37|}
_ZNK7log4cxx7pattern26PropertiesPatternConverter6formatERKNSt3__110shared_ptrINS_3spi12LoggingEventEEERNS2_12basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEERNS_7helpers4PoolE:
   70|     37|{
   71|     37|	if (priv->option.length() == 0)
  ------------------
  |  |   31|     37|#define priv static_cast<PropertiesPatternConverterPrivate*>(m_priv.get())
  ------------------
  |  Branch (71:6): [True: 0, False: 37]
  ------------------
   72|      0|	{
   73|      0|		toAppendTo.append(1, (logchar) 0x7B /* '{' */);
   74|       |
   75|      0|		for (auto const& item : event->getMDCKeySet())
  ------------------
  |  Branch (75:25): [True: 0, False: 0]
  ------------------
   76|      0|		{
   77|      0|			toAppendTo.append(1, (logchar) 0x7B /* '{' */);
   78|      0|			toAppendTo.append(item);
   79|      0|			toAppendTo.append(1, (logchar) 0x2C /* ',' */);
   80|      0|			event->getMDC(item, toAppendTo);
   81|      0|			toAppendTo.append(1, (logchar) 0x7D /* '}' */);
   82|      0|		}
   83|       |
   84|      0|		toAppendTo.append(1, (logchar) 0x7D /* '}' */);
   85|       |
   86|      0|	}
   87|     37|	else
   88|     37|	{
   89|     37|		event->getMDC(priv->option, toAppendTo);
  ------------------
  |  |   31|     37|#define priv static_cast<PropertiesPatternConverterPrivate*>(m_priv.get())
  ------------------
   90|     37|	}
   91|     37|}
_ZN7log4cxx7pattern26PropertiesPatternConverter33PropertiesPatternConverterPrivateC2ERKNSt3__112basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEESB_SB_:
   36|     37|		PatternConverterPrivate( name, style ),
   37|     37|		option(propertyName) {}

_ZN7log4cxx7pattern28RelativeTimePatternConverterC1Ev:
   32|      4|	LoggingEventPatternConverter(LOG4CXX_STR("Time"),
  ------------------
  |  |   51|      4|		#define LOG4CXX_STR(str) str
  ------------------
   33|      4|		LOG4CXX_STR("time"))
  ------------------
  |  |   51|      4|		#define LOG4CXX_STR(str) str
  ------------------
   34|      4|{
   35|      4|}
_ZNK7log4cxx7pattern28RelativeTimePatternConverter6formatERKNSt3__110shared_ptrINS_3spi12LoggingEventEEERNS2_12basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEERNS_7helpers4PoolE:
   45|      4|{
   46|      4|	log4cxx_time_t delta = (event->getTimeStamp() - LoggingEvent::getStartTime()) / 1000;
   47|      4|	StringHelper::toString(delta, toAppendTo);
   48|      4|}

_ZN7log4cxx7helpers16SimpleDateFormat8addTokenEciPKNSt3__16localeERNS2_6vectorIPNS0_20SimpleDateFormatImpl12PatternTokenENS2_9allocatorIS9_EEEE:
  659|  2.36k|{
  660|  2.36k|	PatternToken* token = NULL;
  661|       |
  662|  2.36k|	switch ( spec )
  663|  2.36k|	{
  664|      2|		case 0x47: // 'G'
  ------------------
  |  Branch (664:3): [True: 2, False: 2.36k]
  ------------------
  665|      2|			token = ( new EraToken( repeat, locale ) );
  666|      2|			break;
  667|       |
  668|      1|		case 0x79: // 'y'
  ------------------
  |  Branch (668:3): [True: 1, False: 2.36k]
  ------------------
  669|      1|			token = ( new YearToken( repeat ) );
  670|      1|			break;
  671|       |
  672|      3|		case 0x4D: // 'M'
  ------------------
  |  Branch (672:3): [True: 3, False: 2.36k]
  ------------------
  673|      3|			if ( repeat <= 2 )
  ------------------
  |  Branch (673:9): [True: 3, False: 0]
  ------------------
  674|      3|			{
  675|      3|				token = ( new MonthToken( repeat ) );
  676|      3|			}
  677|      0|			else if ( repeat <= 3 )
  ------------------
  |  Branch (677:14): [True: 0, False: 0]
  ------------------
  678|      0|			{
  679|      0|				token = ( new AbbreviatedMonthNameToken( repeat, locale ) );
  680|      0|			}
  681|      0|			else
  682|      0|			{
  683|      0|				token = ( new FullMonthNameToken( repeat, locale ) );
  684|      0|			}
  685|       |
  686|      3|			break;
  687|       |
  688|      0|		case 0x77: // 'w'
  ------------------
  |  Branch (688:3): [True: 0, False: 2.36k]
  ------------------
  689|      0|			token = ( new WeekInYearToken( repeat ) );
  690|      0|			break;
  691|       |
  692|      0|		case 0x57: // 'W'
  ------------------
  |  Branch (692:3): [True: 0, False: 2.36k]
  ------------------
  693|      0|			token = ( new WeekInMonthToken( repeat ) );
  694|      0|			break;
  695|       |
  696|      0|		case 0x44: // 'D'
  ------------------
  |  Branch (696:3): [True: 0, False: 2.36k]
  ------------------
  697|      0|			token = ( new DayInYearToken( repeat ) );
  698|      0|			break;
  699|       |
  700|      1|		case 0x64: // 'd'
  ------------------
  |  Branch (700:3): [True: 1, False: 2.36k]
  ------------------
  701|      1|			token = ( new DayInMonthToken( repeat ) );
  702|      1|			break;
  703|       |
  704|      0|		case 0x46: // 'F'
  ------------------
  |  Branch (704:3): [True: 0, False: 2.36k]
  ------------------
  705|      0|			token = ( new DayOfWeekInMonthToken( repeat ) );
  706|      0|			break;
  707|       |
  708|      0|		case 0x45: // 'E'
  ------------------
  |  Branch (708:3): [True: 0, False: 2.36k]
  ------------------
  709|      0|			if ( repeat <= 3 )
  ------------------
  |  Branch (709:9): [True: 0, False: 0]
  ------------------
  710|      0|			{
  711|      0|				token = ( new AbbreviatedDayNameToken( repeat, locale ) );
  712|      0|			}
  713|      0|			else
  714|      0|			{
  715|      0|				token = ( new FullDayNameToken( repeat, locale ) );
  716|      0|			}
  717|       |
  718|      0|			break;
  719|       |
  720|      0|		case 0x61: // 'a'
  ------------------
  |  Branch (720:3): [True: 0, False: 2.36k]
  ------------------
  721|      0|			token = ( new AMPMToken( repeat, locale ) );
  722|      0|			break;
  723|       |
  724|      1|		case 0x48: // 'H'
  ------------------
  |  Branch (724:3): [True: 1, False: 2.36k]
  ------------------
  725|      1|			token = ( new MilitaryHourToken( repeat, 0 ) );
  726|      1|			break;
  727|       |
  728|      0|		case 0x6B: // 'k'
  ------------------
  |  Branch (728:3): [True: 0, False: 2.36k]
  ------------------
  729|      0|			token = ( new MilitaryHourToken( repeat, 1 ) );
  730|      0|			break;
  731|       |
  732|      0|		case 0x4B: // 'K'
  ------------------
  |  Branch (732:3): [True: 0, False: 2.36k]
  ------------------
  733|      0|			token = ( new HourToken( repeat, 0 ) );
  734|      0|			break;
  735|       |
  736|     17|		case 0x68: // 'h'
  ------------------
  |  Branch (736:3): [True: 17, False: 2.34k]
  ------------------
  737|     17|			token = ( new HourToken( repeat, 1 ) );
  738|     17|			break;
  739|       |
  740|      1|		case 0x6D: // 'm'
  ------------------
  |  Branch (740:3): [True: 1, False: 2.36k]
  ------------------
  741|      1|			token = ( new MinuteToken( repeat ) );
  742|      1|			break;
  743|       |
  744|      1|		case 0x73: // 's'
  ------------------
  |  Branch (744:3): [True: 1, False: 2.36k]
  ------------------
  745|      1|			token = ( new SecondToken( repeat ) );
  746|      1|			break;
  747|       |
  748|    901|		case 0x53: // 'S'
  ------------------
  |  Branch (748:3): [True: 901, False: 1.46k]
  ------------------
  749|    901|			if ( repeat == 6 )
  ------------------
  |  Branch (749:9): [True: 0, False: 901]
  ------------------
  750|      0|			{
  751|      0|				token = ( new MicrosecondToken( repeat ) );
  752|      0|			}
  753|    901|			else
  754|    901|			{
  755|       |				// It would be nice to support patterns with arbitrary
  756|       |				// subsecond precision (like "s.S" or "s.SSSS"), but we
  757|       |				// don't; so this is a back-compatible default.
  758|    901|				token = ( new MillisecondToken( repeat ) );
  759|    901|			}
  760|       |
  761|    901|			break;
  762|       |
  763|      0|		case 0x7A: // 'z'
  ------------------
  |  Branch (763:3): [True: 0, False: 2.36k]
  ------------------
  764|      0|			token = ( new GeneralTimeZoneToken( repeat ) );
  765|      0|			break;
  766|       |
  767|    920|		case 0x5A: // 'Z'
  ------------------
  |  Branch (767:3): [True: 920, False: 1.44k]
  ------------------
  768|    920|			token = ( new RFC822TimeZoneToken( repeat ) );
  769|    920|			break;
  770|       |
  771|    518|		default:
  ------------------
  |  Branch (771:3): [True: 518, False: 1.84k]
  ------------------
  772|    518|			token = ( new LiteralToken( spec, repeat ) );
  773|  2.36k|	}
  774|       |
  775|  2.36k|	assert( token != NULL );
  ------------------
  |  Branch (775:2): [True: 2.36k, False: 0]
  ------------------
  776|  2.36k|	pattern.push_back( token );
  777|  2.36k|}
_ZN7log4cxx7helpers16SimpleDateFormat12parsePatternERKNSt3__112basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEEPKNS2_6localeERNS2_6vectorIPNS0_20SimpleDateFormatImpl12PatternTokenENS6_ISH_EEEE:
  782|      6|{
  783|      6|	if ( !fmt.empty() )
  ------------------
  |  Branch (783:7): [True: 6, False: 0]
  ------------------
  784|      6|	{
  785|      6|		LogString::const_iterator iter = fmt.begin();
  786|      6|		int repeat = 1;
  787|      6|		logchar prevChar = * iter;
  788|       |
  789|  4.02k|		for ( iter++; iter != fmt.end(); iter++ )
  ------------------
  |  Branch (789:17): [True: 4.02k, False: 6]
  ------------------
  790|  4.02k|		{
  791|  4.02k|			if ( * iter == prevChar )
  ------------------
  |  Branch (791:9): [True: 1.66k, False: 2.36k]
  ------------------
  792|  1.66k|			{
  793|  1.66k|				repeat++;
  794|  1.66k|			}
  795|  2.36k|			else
  796|  2.36k|			{
  797|  2.36k|				addToken( prevChar, repeat, locale, pattern );
  798|  2.36k|				prevChar = * iter;
  799|  2.36k|				repeat = 1;
  800|  2.36k|			}
  801|  4.02k|		}
  802|       |
  803|      6|		addToken( prevChar, repeat, locale, pattern );
  804|      6|	}
  805|      6|}
_ZN7log4cxx7helpers16SimpleDateFormatC2ERKNSt3__112basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEE:
  824|      6|SimpleDateFormat::SimpleDateFormat( const LogString& fmt ) : m_priv(std::make_unique<SimpleDateFormatPrivate>())
  825|      6|{
  826|      6|#if LOG4CXX_HAS_STD_LOCALE
  827|      6|	std::locale defaultLocale;
  828|      6|	parsePattern( fmt, & defaultLocale, m_priv->pattern );
  829|       |#else
  830|       |	parsePattern( fmt, NULL, m_priv->pattern );
  831|       |#endif
  832|       |
  833|      6|	for (auto const& item : m_priv->pattern)
  ------------------
  |  Branch (833:24): [True: 2.36k, False: 6]
  ------------------
  834|  2.36k|	{
  835|  2.36k|		item->setTimeZone( m_priv->timeZone );
  836|  2.36k|	}
  837|      6|}
_ZN7log4cxx7helpers16SimpleDateFormatD2Ev:
  851|      6|{
  852|      6|	for (auto item : m_priv->pattern)
  ------------------
  |  Branch (852:17): [True: 2.36k, False: 6]
  ------------------
  853|  2.36k|	{
  854|  2.36k|		delete item;
  855|  2.36k|	}
  856|      6|}
_ZNK7log4cxx7helpers16SimpleDateFormat6formatERNSt3__112basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEElRNS0_4PoolE:
  860|     17|{
  861|     17|	helpers::Pool tempPool;
  862|     17|	apr_time_exp_t exploded;
  863|     17|	apr_status_t stat = m_priv->timeZone->explode( & exploded, tm );
  864|       |
  865|     17|	if ( stat == APR_SUCCESS )
  ------------------
  |  |  225|     17|#define APR_SUCCESS 0
  ------------------
  |  Branch (865:7): [True: 17, False: 0]
  ------------------
  866|     17|	{
  867|  7.11k|		for ( PatternTokenList::const_iterator iter = m_priv->pattern.begin(); iter != m_priv->pattern.end(); iter++ )
  ------------------
  |  Branch (867:74): [True: 7.09k, False: 17]
  ------------------
  868|  7.09k|		{
  869|  7.09k|			( * iter )->format( toAppendTo, exploded, tempPool );
  870|  7.09k|		}
  871|     17|	}
  872|     17|}
_ZN7log4cxx7helpers16SimpleDateFormat11setTimeZoneERKNSt3__110shared_ptrINS0_8TimeZoneEEE:
  875|      6|{
  876|      6|	m_priv->timeZone = zone;
  877|      6|}
_ZN7log4cxx7helpers20SimpleDateFormatImpl8EraTokenC2EiPKNSt3__16localeE:
  243|      2|		{
  244|      2|		}
_ZN7log4cxx7helpers20SimpleDateFormatImpl12PatternTokenC2Ev:
   90|  2.36k|		{
   91|  2.36k|		}
_ZN7log4cxx7helpers20SimpleDateFormatImpl12PatternTokenD2Ev:
   94|  2.36k|		{
   95|  2.36k|		}
_ZN7log4cxx7helpers20SimpleDateFormatImpl12PatternToken11setTimeZoneERKNSt3__110shared_ptrINS0_8TimeZoneEEE:
  102|  2.36k|		{
  103|  2.36k|		}
_ZNK7log4cxx7helpers20SimpleDateFormatImpl8EraToken6formatERNSt3__112basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEERK14apr_time_exp_tRNS0_4PoolE:
  247|      6|		{
  248|      6|			s.append(1, (logchar) 0x41 /* 'A' */);
  249|      6|			s.append(1, (logchar) 0x44 /* 'D' */);
  250|      6|		}
_ZN7log4cxx7helpers20SimpleDateFormatImpl9YearTokenC2Ei:
  286|      1|		YearToken( int width1 ) : NumericToken( width1 )
  287|      1|		{
  288|      1|		}
_ZN7log4cxx7helpers20SimpleDateFormatImpl12NumericTokenC2Em:
  258|    926|		NumericToken( size_t width1 ) : width( width1 )
  259|    926|		{
  260|    926|		}
_ZNK7log4cxx7helpers20SimpleDateFormatImpl12NumericToken6formatERNSt3__112basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEERK14apr_time_exp_tRNS0_4PoolE:
  265|  2.77k|		{
  266|  2.77k|			size_t initialLength = s.length();
  267|       |
  268|  2.77k|			StringHelper::toString( getField( tm ), s );
  269|  2.77k|			size_t finalLength = s.length();
  270|       |
  271|  2.77k|			if ( initialLength + width > finalLength )
  ------------------
  |  Branch (271:9): [True: 26, False: 2.75k]
  ------------------
  272|     26|			{
  273|     26|				s.insert( initialLength, ( initialLength + width ) - finalLength, (logchar) 0x30 /* '0' */);
  274|     26|			}
  275|  2.77k|		}
_ZNK7log4cxx7helpers20SimpleDateFormatImpl9YearToken8getFieldERK14apr_time_exp_t:
  291|      3|		{
  292|      3|			return 1900 + tm.tm_year;
  293|      3|		}
_ZN7log4cxx7helpers20SimpleDateFormatImpl10MonthTokenC2Ei:
  301|      3|		MonthToken( int width1 ) : NumericToken( width1 )
  302|      3|		{
  303|      3|		}
_ZNK7log4cxx7helpers20SimpleDateFormatImpl10MonthToken8getFieldERK14apr_time_exp_t:
  306|      9|		{
  307|      9|			return tm.tm_mon + 1;
  308|      9|		}
_ZN7log4cxx7helpers20SimpleDateFormatImpl15DayInMonthTokenC2Ei:
  384|      1|		DayInMonthToken( int width1 ) : NumericToken( width1 )
  385|      1|		{
  386|      1|		}
_ZNK7log4cxx7helpers20SimpleDateFormatImpl15DayInMonthToken8getFieldERK14apr_time_exp_t:
  389|      3|		{
  390|      3|			return tm.tm_mday;
  391|      3|		}
_ZN7log4cxx7helpers20SimpleDateFormatImpl17MilitaryHourTokenC2Eii:
  469|      1|		MilitaryHourToken( int width1, int offset1 ) : NumericToken( width1 ), offset( offset1 )
  470|      1|		{
  471|      1|		}
_ZNK7log4cxx7helpers20SimpleDateFormatImpl17MilitaryHourToken8getFieldERK14apr_time_exp_t:
  474|      3|		{
  475|      3|			return tm.tm_hour + offset;
  476|      3|		}
_ZN7log4cxx7helpers20SimpleDateFormatImpl9HourTokenC2Eii:
  487|     17|		HourToken( int width1, int /* offset1 */ ) : NumericToken( width1 ), offset( 0 )
  488|     17|		{
  489|     17|		}
_ZNK7log4cxx7helpers20SimpleDateFormatImpl9HourToken8getFieldERK14apr_time_exp_t:
  492|     51|		{
  493|     51|			return ( ( tm.tm_hour + 12 - offset ) % 12 ) + offset;
  494|     51|		}
_ZN7log4cxx7helpers20SimpleDateFormatImpl11MinuteTokenC2Ei:
  505|      1|		MinuteToken( int width1 ) : NumericToken( width1 )
  506|      1|		{
  507|      1|		}
_ZNK7log4cxx7helpers20SimpleDateFormatImpl11MinuteToken8getFieldERK14apr_time_exp_t:
  510|      3|		{
  511|      3|			return tm.tm_min;
  512|      3|		}
_ZN7log4cxx7helpers20SimpleDateFormatImpl11SecondTokenC2Ei:
  520|      1|		SecondToken( int width1 ) : NumericToken( width1 )
  521|      1|		{
  522|      1|		}
_ZNK7log4cxx7helpers20SimpleDateFormatImpl11SecondToken8getFieldERK14apr_time_exp_t:
  525|      3|		{
  526|      3|			return tm.tm_sec;
  527|      3|		}
_ZN7log4cxx7helpers20SimpleDateFormatImpl16MillisecondTokenC2Ei:
  535|    901|		MillisecondToken( int width1 ) : NumericToken( width1 )
  536|    901|		{
  537|    901|		}
_ZNK7log4cxx7helpers20SimpleDateFormatImpl16MillisecondToken8getFieldERK14apr_time_exp_t:
  540|  2.70k|		{
  541|  2.70k|			return tm.tm_usec / 1000;
  542|  2.70k|		}
_ZN7log4cxx7helpers20SimpleDateFormatImpl19RFC822TimeZoneTokenC2Ei:
  608|    920|		{
  609|    920|		}
_ZNK7log4cxx7helpers20SimpleDateFormatImpl19RFC822TimeZoneToken6formatERNSt3__112basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEERK14apr_time_exp_tRNS0_4PoolE:
  612|  2.76k|		{
  613|  2.76k|			if ( tm.tm_gmtoff == 0 )
  ------------------
  |  Branch (613:9): [True: 2.76k, False: 0]
  ------------------
  614|  2.76k|			{
  615|  2.76k|				s.append( 1, (logchar) 0x5A /* 'Z'  */ );
  616|  2.76k|			}
  617|      0|			else
  618|      0|			{
  619|      0|				apr_int32_t off = tm.tm_gmtoff;
  620|      0|				s.reserve(s.length() + 5);
  621|       |
  622|      0|				if ( off < 0 )
  ------------------
  |  Branch (622:10): [True: 0, False: 0]
  ------------------
  623|      0|				{
  624|      0|					s.push_back( '-' );
  625|      0|					off = -off;
  626|      0|				}else{
  627|      0|					s.push_back( '+' );
  628|      0|				}
  629|       |
  630|      0|				LogString hours;
  631|      0|				StringHelper::toString( off / 3600, hours );
  632|      0|				if( hours.size() == 1 ){
  ------------------
  |  Branch (632:9): [True: 0, False: 0]
  ------------------
  633|      0|					s.push_back( '0' );
  634|      0|				}
  635|      0|				s.append(hours);
  636|       |
  637|      0|				LogString min;
  638|      0|				StringHelper::toString( ( off % 3600 ) / 60, min );
  639|      0|				if( min.size() == 1 ){
  ------------------
  |  Branch (639:9): [True: 0, False: 0]
  ------------------
  640|      0|					s.push_back( '0' );
  641|      0|				}
  642|      0|				s.append(min);
  643|      0|			}
  644|  2.76k|		}
_ZN7log4cxx7helpers20SimpleDateFormatImpl12LiteralTokenC2Eci:
  223|    518|		LiteralToken( logchar ch1, int count1 ) : ch( ch1 ), count( count1 )
  224|    518|		{
  225|    518|		}
_ZNK7log4cxx7helpers20SimpleDateFormatImpl12LiteralToken6formatERNSt3__112basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEERK14apr_time_exp_tRNS0_4PoolE:
  228|  1.55k|		{
  229|  1.55k|			s.append( count, ch );
  230|  1.55k|		}
_ZN7log4cxx7helpers16SimpleDateFormat23SimpleDateFormatPrivateC2Ev:
  810|      6|		timeZone(TimeZone::getDefault())
  811|      6|	{}

_ZN7log4cxx7helpers12StringHelper16equalsIgnoreCaseERKNSt3__112basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEEPKcSC_:
   32|     15|{
   33|     15|	for (const auto& item : s1)
  ------------------
  |  Branch (33:24): [True: 15, False: 0]
  ------------------
   34|     15|	{
   35|     15|		if (0 == item || // OSS-Fuzz makes strings with embedded NUL characters
  ------------------
  |  Branch (35:7): [True: 3, False: 12]
  ------------------
   36|     12|			(item != *upper && item != *lower))
  ------------------
  |  Branch (36:5): [True: 12, False: 0]
  |  Branch (36:23): [True: 12, False: 0]
  ------------------
   37|     15|		{
   38|     15|			return false;
   39|     15|		}
   40|      0|		++upper;
   41|      0|		++lower;
   42|      0|	}
   43|       |
   44|      0|	return 0 == *upper;
   45|     15|}
_ZN7log4cxx7helpers12StringHelper11toLowerCaseERKNSt3__112basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEE:
   69|    228|{
   70|       |	// Fold ASCII A-Z only. Passing a value not representable as unsigned char
   71|       |	// (or EOF) to std::tolower(int) is undefined behaviour; with signed char,
   72|       |	// any byte > 0x7F sign-extends to a negative int. The previous implementation
   73|       |	// also produced locale-dependent output for the same input, which is wrong
   74|       |	// for the callers (class names, color names, column names — all ASCII).
   75|    228|	LogString d;
   76|    228|	d.reserve(s.size());
   77|    228|	for (auto ch : s)
  ------------------
  |  Branch (77:15): [True: 3.79k, False: 228]
  ------------------
   78|  3.79k|	{
   79|  3.79k|		if (ch >= static_cast<logchar>('A') && ch <= static_cast<logchar>('Z'))
  ------------------
  |  Branch (79:7): [True: 3.79k, False: 0]
  |  Branch (79:42): [True: 666, False: 3.13k]
  ------------------
   80|    666|			d.push_back(static_cast<logchar>(ch + ('a' - 'A')));
   81|  3.13k|		else
   82|  3.13k|			d.push_back(ch);
   83|  3.79k|	}
   84|    228|	return d;
   85|    228|}
_ZN7log4cxx7helpers12StringHelper4trimERKNSt3__112basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEE:
   88|      9|{
   89|      9|	LogString::size_type pos = s.find_first_not_of(' ');
   90|       |
   91|      9|	if (pos == std::string::npos)
  ------------------
  |  Branch (91:6): [True: 0, False: 9]
  ------------------
   92|      0|	{
   93|      0|		return LogString();
   94|      0|	}
   95|       |
   96|      9|	LogString::size_type n = s.find_last_not_of(' ') - pos + 1;
   97|      9|	return s.substr(pos, n);
   98|      9|}
_ZN7log4cxx7helpers12StringHelper8toStringEiRNSt3__112basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEE:
  144|  2.78k|{
  145|       |#if LOG4CXX_LOGCHAR_IS_WCHAR
  146|       |	dst.append(std::to_wstring(n));
  147|       |#elif LOG4CXX_LOGCHAR_IS_UTF8
  148|       |	dst.append(std::to_string(n));
  149|       |#else
  150|       |	Transcoder::decode(std::to_string(n), dst);
  151|       |#endif
  152|  2.78k|}
_ZN7log4cxx7helpers12StringHelper8toStringElRNSt3__112basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEE:
  168|      4|{
  169|       |#if LOG4CXX_LOGCHAR_IS_WCHAR
  170|       |	dst.append(std::to_wstring(n));
  171|       |#elif LOG4CXX_LOGCHAR_IS_UTF8
  172|       |	dst.append(std::to_string(n));
  173|       |#else
  174|       |	Transcoder::decode(std::to_string(n), dst);
  175|       |#endif
  176|      4|}

_ZN7log4cxx7helpers18ThreadSpecificData25ThreadSpecificDataPrivate15setThreadIdNameEv:
  111|      1|{
  112|      1|#if LOG4CXX_HAS_PTHREAD_SELF && !(defined(_WIN32) && defined(_LIBCPP_VERSION))
  113|       |	// pthread_t encoded in HEX takes needs as many characters
  114|       |	// as two times the size of the type, plus an additional null byte.
  115|      1|	auto threadId = pthread_self();
  116|      1|	char result[sizeof(pthread_t) * 3 + 10];
  117|      1|	apr_snprintf(result, sizeof(result), LOG4CXX_APR_THREAD_FMTSPEC, (void*) &threadId);
  118|      1|	this->pNamePair->idString = Transcoder::decode(result);
  119|       |#elif defined(_WIN32)
  120|       |	char result[20];
  121|       |	apr_snprintf(result, sizeof(result), LOG4CXX_WIN32_THREAD_FMTSPEC, GetCurrentThreadId());
  122|       |	this->pNamePair->idString = Transcoder::decode(result);
  123|       |#else
  124|       |	std::stringstream ss;
  125|       |	ss << std::hex << "0x" << std::this_thread::get_id();
  126|       |	this->pNamePair->idString = Transcoder::decode(ss.str().c_str());
  127|       |#endif
  128|      1|}
_ZN7log4cxx7helpers18ThreadSpecificData25ThreadSpecificDataPrivate17setThreadUserNameEv:
  136|      1|{
  137|      1|#if LOG4CXX_HAS_PTHREAD_GETNAME && !(defined(_WIN32) && defined(_LIBCPP_VERSION))
  138|      1|	char result[16];
  139|      1|	pthread_t current_thread = pthread_self();
  140|      1|	if (pthread_getname_np(current_thread, result, sizeof(result)) < 0 || 0 == result[0])
  ------------------
  |  Branch (140:6): [True: 0, False: 1]
  |  Branch (140:72): [True: 0, False: 1]
  ------------------
  141|      0|		this->pNamePair->threadName = this->pNamePair->idString;
  142|      1|	else
  143|      1|		this->pNamePair->threadName = Transcoder::decode(result);
  144|       |#elif defined(_WIN32)
  145|       |	typedef HRESULT (WINAPI *TGetThreadDescription)(HANDLE, PWSTR*);
  146|       |	static struct initialiser
  147|       |	{
  148|       |		HMODULE hKernelBase;
  149|       |		TGetThreadDescription GetThreadDescription;
  150|       |		initialiser()
  151|       |			: hKernelBase(GetModuleHandleA("KernelBase.dll"))
  152|       |			, GetThreadDescription(nullptr)
  153|       |		{
  154|       |			if (hKernelBase)
  155|       |				GetThreadDescription = reinterpret_cast<TGetThreadDescription>(GetProcAddress(hKernelBase, "GetThreadDescription"));
  156|       |		}
  157|       |	} win32func;
  158|       |	if (win32func.GetThreadDescription)
  159|       |	{
  160|       |		PWSTR result = 0;
  161|       |		HRESULT hr = win32func.GetThreadDescription(GetCurrentThread(), &result);
  162|       |		if (SUCCEEDED(hr) && result)
  163|       |		{
  164|       |			std::wstring wresult = result;
  165|       |			LOG4CXX_DECODE_WCHAR(decoded, wresult);
  166|       |			LocalFree(result);
  167|       |			this->pNamePair->threadName = decoded;
  168|       |		}
  169|       |	}
  170|       |	if (this->pNamePair->threadName.empty())
  171|       |		this->pNamePair->threadName = this->pNamePair->idString;
  172|       |#else
  173|       |	this->pNamePair->threadName = this->pNamePair->idString;
  174|       |#endif
  175|      1|}
_ZN7log4cxx7helpers18ThreadSpecificDataC2Ev:
  178|      1|	: m_priv(std::make_unique<ThreadSpecificDataPrivate>())
  179|      1|{
  180|      1|}
_ZN7log4cxx7helpers18ThreadSpecificDataD2Ev:
  188|      1|{
  189|      1|	m_priv.reset();
  190|      1|}
_ZN7log4cxx7helpers18ThreadSpecificData6getMapEv:
  198|     37|{
  199|     37|	return m_priv->mdcMap;
  200|     37|}
_ZN7log4cxx7helpers18ThreadSpecificData8getNamesEv:
  203|     74|{
  204|     74|	auto p = getCurrentData();
  205|     74|	return p ? p->m_priv->pNamePair : std::make_shared<NamePair>();
  ------------------
  |  Branch (205:9): [True: 74, False: 0]
  ------------------
  206|     74|}
_ZN7log4cxx7helpers18ThreadSpecificData14getCurrentDataEv:
  249|    111|{
  250|    111|#if LOG4CXX_HAS_THREAD_LOCAL
  251|    111|	thread_local ThreadSpecificData data;
  252|    111|	return data.m_priv ? &data : NULL;
  ------------------
  |  Branch (252:9): [True: 111, False: 0]
  ------------------
  253|       |#elif APR_HAS_THREADS
  254|       |	void* pData = NULL;
  255|       |	if (APR_SUCCESS == apr_threadkey_private_get(&pData, APRInitializer::getTlsKey())
  256|       |		&& !pData)
  257|       |	{
  258|       |		pData = new ThreadSpecificData();
  259|       |		if (APR_SUCCESS != apr_threadkey_private_set(pData, APRInitializer::getTlsKey()))
  260|       |		{
  261|       |			delete (ThreadSpecificData*)pData;
  262|       |			pData = NULL;
  263|       |		}
  264|       |	}
  265|       |	if (pData)
  266|       |		return (ThreadSpecificData*) pData;
  267|       |#endif
  268|       |
  269|       |#if !LOG4CXX_HAS_THREAD_LOCAL
  270|       |	// Fallback implementation that is not expected to be used
  271|       |	using TaggedData = std::pair<std::thread::id, ThreadSpecificData>;
  272|       |	static std::list<TaggedData> thread_id_map;
  273|       |	static std::mutex mutex;
  274|       |	std::lock_guard<std::mutex> lock(mutex);
  275|       |	auto threadId = std::this_thread::get_id();
  276|       |	auto pThreadId = std::find_if(thread_id_map.begin(), thread_id_map.end()
  277|       |		, [threadId](const TaggedData& item) { return threadId == item.first; });
  278|       |	if (thread_id_map.end() == pThreadId)
  279|       |		pThreadId = thread_id_map.emplace(thread_id_map.begin(), threadId, ThreadSpecificData());
  280|       |	return &pThreadId->second;
  281|       |#endif
  282|    111|}
_ZN7log4cxx7helpers18ThreadSpecificData7recycleEv:
  285|     37|{
  286|       |#if !LOG4CXX_HAS_THREAD_LOCAL && APR_HAS_THREADS
  287|       |	if (m_priv->ndcStack.empty() && m_priv->mdcMap.empty())
  288|       |	{
  289|       |		void* pData = NULL;
  290|       |		if (APR_SUCCESS == apr_threadkey_private_get(&pData, APRInitializer::getTlsKey())
  291|       |			&& pData == this
  292|       |			&& APR_SUCCESS == apr_threadkey_private_set(0, APRInitializer::getTlsKey()))
  293|       |				delete this;
  294|       |	}
  295|       |#endif
  296|     37|}
_ZN7log4cxx7helpers18ThreadSpecificData25ThreadSpecificDataPrivateC2Ev:
   42|      1|		: pNamePair(std::make_shared<NamePair>())
   43|      1|	{
   44|      1|		setThreadIdName();
   45|      1|		setThreadUserName();
   46|      1|	}

_ZN7log4cxx7pattern30ThreadUsernamePatternConverterC1Ev:
   31|      3|	LoggingEventPatternConverter(LOG4CXX_STR("Thread Name"),
  ------------------
  |  |   51|      3|		#define LOG4CXX_STR(str) str
  ------------------
   32|      3|		LOG4CXX_STR("Thread Name"))
  ------------------
  |  |   51|      3|		#define LOG4CXX_STR(str) str
  ------------------
   33|      3|{
   34|      3|}
_ZNK7log4cxx7pattern30ThreadUsernamePatternConverter6formatERKNSt3__110shared_ptrINS_3spi12LoggingEventEEERNS2_12basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEERNS_7helpers4PoolE:
   43|      3|{
   44|      3|	toAppendTo.append(event->getThreadUserName());
   45|      3|}

_ZN7log4cxx7helpers8TimeZoneC2ERKNSt3__112basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEE:
  184|      2|TimeZone::TimeZone( const LogString& id1 ) : id( id1 )
  185|      2|{
  186|      2|}
_ZN7log4cxx7helpers8TimeZoneD2Ev:
  189|      2|{
  190|      2|}
_ZN7log4cxx7helpers8TimeZone10getDefaultEv:
  193|     12|{
  194|     12|	return LOG4CXX_NS::helpers::TimeZoneImpl::LocalTimeZone::getInstance();
  195|     12|}
_ZN7log4cxx7helpers8TimeZone6getGMTEv:
  198|      6|{
  199|      6|	return LOG4CXX_NS::helpers::TimeZoneImpl::GMTTimeZone::getInstance();
  200|      6|}
_ZN7log4cxx7helpers8TimeZone11getTimeZoneERKNSt3__112basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEE:
  203|      6|{
  204|      6|	const logchar gmt[] = { 0x47, 0x4D, 0x54, 0 };
  205|       |
  206|      6|	if ( id == gmt )
  ------------------
  |  Branch (206:7): [True: 0, False: 6]
  ------------------
  207|      0|	{
  208|      0|		return LOG4CXX_NS::helpers::TimeZoneImpl::GMTTimeZone::getInstance();
  209|      0|	}
  210|       |
  211|      6|	if ( id.length() >= 5 && id.substr( 0, 3 ) == gmt )
  ------------------
  |  Branch (211:7): [True: 5, False: 1]
  |  Branch (211:7): [True: 0, False: 6]
  |  Branch (211:27): [True: 0, False: 5]
  ------------------
  212|      0|	{
  213|      0|		int hours = 0;
  214|      0|		int minutes = 0;
  215|      0|		int sign = 1;
  216|       |
  217|      0|		if (id[3] == 0x2D /* '-' */)
  ------------------
  |  Branch (217:7): [True: 0, False: 0]
  ------------------
  218|      0|		{
  219|      0|			sign = -1;
  220|      0|		}
  221|       |
  222|      0|		LogString off( id.substr( 4 ) );
  223|       |
  224|      0|		if ( id.length() >= 7 )
  ------------------
  |  Branch (224:8): [True: 0, False: 0]
  ------------------
  225|      0|		{
  226|      0|			size_t colonPos = off.find( 0x3A /* ':' */);
  227|       |
  228|      0|			if ( colonPos == LogString::npos )
  ------------------
  |  Branch (228:9): [True: 0, False: 0]
  ------------------
  229|      0|			{
  230|      0|				minutes = StringHelper::toInt(off.substr(off.length() - 2));
  231|      0|				hours = StringHelper::toInt(off.substr(0, off.length() - 2));
  232|      0|			}
  233|      0|			else
  234|      0|			{
  235|      0|				minutes = StringHelper::toInt(off.substr(colonPos + 1));
  236|      0|				hours = StringHelper::toInt(off.substr(0, colonPos));
  237|      0|			}
  238|      0|		}
  239|      0|		else
  240|      0|		{
  241|      0|			hours = StringHelper::toInt(off);
  242|      0|		}
  243|       |
  244|       |		// Make sure that our offset can't be crazy
  245|      0|		if( hours < -12 || 14 < hours)
  ------------------
  |  Branch (245:7): [True: 0, False: 0]
  |  Branch (245:22): [True: 0, False: 0]
  ------------------
  246|      0|		{
  247|      0|			throw RuntimeException(LOG4CXX_STR("Hour offset must be in (-12..14)"));
  ------------------
  |  |   51|      0|		#define LOG4CXX_STR(str) str
  ------------------
  248|      0|		}
  249|      0|		if (minutes < 0 || 60 < minutes)
  ------------------
  |  Branch (249:7): [True: 0, False: 0]
  |  Branch (249:22): [True: 0, False: 0]
  ------------------
  250|      0|		{
  251|      0|			throw RuntimeException(LOG4CXX_STR("Minute offset must be in (0..60)"));
  ------------------
  |  |   51|      0|		#define LOG4CXX_STR(str) str
  ------------------
  252|      0|		}
  253|       |
  254|      0|		LogString s(gmt);
  255|      0|		LogString hh;
  256|      0|		StringHelper::toString(hours, hh);
  257|       |
  258|      0|		if (sign > 0)
  ------------------
  |  Branch (258:7): [True: 0, False: 0]
  ------------------
  259|      0|		{
  260|      0|			s.append(1, (logchar) 0x2B /* '+' */);
  261|      0|		}
  262|      0|		else
  263|      0|		{
  264|      0|			s.append(1, (logchar) 0x2D /* '-' */);
  265|      0|		}
  266|       |
  267|      0|		if (hh.length() == 1)
  ------------------
  |  Branch (267:7): [True: 0, False: 0]
  ------------------
  268|      0|		{
  269|      0|			s.append(1, (logchar) 0x30 /* '0' */);
  270|      0|		}
  271|       |
  272|      0|		s.append(hh);
  273|      0|		s.append(1, (logchar) 0x3A /*' :' */);
  274|      0|		LogString mm;
  275|      0|		StringHelper::toString(minutes, mm);
  276|       |
  277|      0|		if (mm.length() == 1)
  ------------------
  |  Branch (277:7): [True: 0, False: 0]
  ------------------
  278|      0|		{
  279|      0|			s.append(1, (logchar) 0x30 /* '0' */);
  280|      0|		}
  281|       |
  282|      0|		s.append(mm);
  283|      0|		apr_int32_t offset = sign * (hours * 3600 + minutes * 60);
  284|      0|		return std::make_shared<helpers::TimeZoneImpl::FixedTimeZone>( s, offset );
  285|      0|	}
  286|       |
  287|      6|	const TimeZonePtr& ltz = getDefault();
  288|       |
  289|      6|	if ( ltz->getID() == id )
  ------------------
  |  Branch (289:7): [True: 0, False: 6]
  ------------------
  290|      0|	{
  291|      0|		return ltz;
  292|      0|	}
  293|       |
  294|      6|	return getGMT();
  295|      6|}
_ZN7log4cxx7helpers12TimeZoneImpl13LocalTimeZone11getInstanceEv:
   88|     12|		{
   89|     12|			static WideLife<TimeZonePtr> tz = std::make_shared<LocalTimeZone>();
   90|     12|			return tz;
   91|     12|		}
_ZN7log4cxx7helpers12TimeZoneImpl13LocalTimeZoneC2Ev:
  115|      1|		LocalTimeZone() : TimeZone( getTimeZoneName() )
  116|      1|		{
  117|      1|		}
_ZN7log4cxx7helpers12TimeZoneImpl13LocalTimeZone15getTimeZoneNameEv:
  121|      1|		{
  122|      1|			const int MAX_TZ_LENGTH = 255;
  123|      1|			char tzName[MAX_TZ_LENGTH];
  124|      1|			apr_size_t tzLength;
  125|      1|			apr_time_exp_t tm;
  126|      1|			apr_time_exp_lt(&tm, 0);
  127|      1|			apr_strftime(tzName, &tzLength, MAX_TZ_LENGTH, "%Z", &tm);
  128|       |
  129|      1|			if (tzLength == 0)
  ------------------
  |  Branch (129:8): [True: 0, False: 1]
  ------------------
  130|      0|			{
  131|      0|				apr_strftime(tzName, &tzLength, MAX_TZ_LENGTH, "%z", &tm);
  132|      0|			}
  133|       |
  134|      1|			tzName[tzLength] = 0;
  135|      1|			LogString retval;
  136|      1|			LOG4CXX_NS::helpers::Transcoder::decode(tzName, retval);
  137|      1|			return retval;
  138|      1|		}
_ZN7log4cxx7helpers12TimeZoneImpl11GMTTimeZone11getInstanceEv:
   49|      6|		{
   50|      6|			static WideLife<TimeZonePtr> tz = std::make_shared<GMTTimeZone>();
   51|      6|			return tz;
   52|      6|		}
_ZN7log4cxx7helpers12TimeZoneImpl11GMTTimeZoneC2Ev:
   75|      1|		GMTTimeZone() : TimeZone( LOG4CXX_STR("GMT") )
  ------------------
  |  |   51|      1|		#define LOG4CXX_STR(str) str
  ------------------
   76|      1|		{
   77|      1|		}
_ZNK7log4cxx7helpers12TimeZoneImpl11GMTTimeZone7explodeEP14apr_time_exp_tl:
   56|     17|		{
   57|     17|			apr_status_t stat;
   58|       |
   59|       |			//  APR 1.1 and early mishandles microseconds on dates
   60|       |			//   before 1970, APR bug 32520
   61|     17|			if (LOG4CXX_UNLIKELY(input < 0 && apr_time_usec(input) < 0))
  ------------------
  |  | 2228|     17|		#define LOG4CXX_UNLIKELY(expr) __builtin_expect(expr, 0)
  |  |  ------------------
  |  |  |  Branch (2228:34): [True: 0, False: 17]
  |  |  |  Branch (2228:51): [True: 0, False: 17]
  |  |  |  Branch (2228:51): [True: 0, False: 0]
  |  |  ------------------
  ------------------
   62|      0|			{
   63|      0|				apr_time_t floorTime = (apr_time_sec(input) - 1) * APR_USEC_PER_SEC;
  ------------------
  |  |   64|      0|#define apr_time_sec(time) ((time) / APR_USEC_PER_SEC)
  |  |  ------------------
  |  |  |  |   61|      0|#define APR_USEC_PER_SEC APR_TIME_C(1000000)
  |  |  |  |  ------------------
  |  |  |  |  |  |   50|      0|#define APR_TIME_C(val) APR_INT64_C(val)
  |  |  |  |  |  |  ------------------
  |  |  |  |  |  |  |  |  373|      0|#define APR_INT64_C(val) INT64_C(val)
  |  |  |  |  |  |  ------------------
  |  |  |  |  ------------------
  |  |  ------------------
  ------------------
              				apr_time_t floorTime = (apr_time_sec(input) - 1) * APR_USEC_PER_SEC;
  ------------------
  |  |   61|      0|#define APR_USEC_PER_SEC APR_TIME_C(1000000)
  |  |  ------------------
  |  |  |  |   50|      0|#define APR_TIME_C(val) APR_INT64_C(val)
  |  |  |  |  ------------------
  |  |  |  |  |  |  373|      0|#define APR_INT64_C(val) INT64_C(val)
  |  |  |  |  ------------------
  |  |  ------------------
  ------------------
   64|      0|				stat = apr_time_exp_gmt(result, floorTime);
   65|      0|				result->tm_usec = (int) (input - floorTime);
   66|      0|			}
   67|     17|			else
   68|     17|			{
   69|     17|				stat = apr_time_exp_gmt( result, input );
   70|     17|			}
   71|       |
   72|     17|			return stat;
   73|     17|		}

_ZN7log4cxx7helpers10Transcoder6decodeERKNSt3__112basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEERS8_:
  245|    306|{
  246|    306|#if LOG4CXX_CHARSET_UTF8 && LOG4CXX_LOGCHAR_IS_UTF8
  247|    306|	dst.append(src);
  248|       |#else
  249|       |	static CharsetDecoderPtr decoder(CharsetDecoder::getDefaultDecoder());
  250|       |	dst.reserve(dst.size() + src.size());
  251|       |	std::string::const_iterator iter = src.begin();
  252|       |#if !LOG4CXX_CHARSET_EBCDIC
  253|       |
  254|       |	for (;
  255|       |		iter != src.end() && ((unsigned char) *iter) < 0x80;
  256|       |		iter++)
  257|       |	{
  258|       |		dst.append(1, *iter);
  259|       |	}
  260|       |
  261|       |#endif
  262|       |
  263|       |	if (iter != src.end())
  264|       |	{
  265|       |		size_t offset = iter - src.begin();
  266|       |		ByteBuffer buf(const_cast<char*>(src.data() + offset), src.size() - offset);
  267|       |
  268|       |		while (buf.remaining() > 0)
  269|       |		{
  270|       |			log4cxx_status_t stat = decoder->decode(buf, dst);
  271|       |
  272|       |			if (CharsetDecoder::isError(stat))
  273|       |			{
  274|       |				encode(LOSSCHAR, dst);
  275|       |				buf.increment_position(1);
  276|       |			}
  277|       |		}
  278|       |
  279|       |		decoder->decode(buf, dst);
  280|       |	}
  281|       |
  282|       |#endif
  283|    306|}
_ZN7log4cxx7helpers10Transcoder6decodeEPKc:
  644|      2|{
  645|      2|#if LOG4CXX_LOGCHAR_IS_UTF8 && !LOG4CXX_CHARSET_EBCDIC
  646|      2|	return val;
  647|       |#else
  648|       |	LogString dst;
  649|       |	Transcoder::decode(val, dst);
  650|       |	return dst;
  651|       |#endif
  652|      2|}

_ZN7log4cxx7helpers17ISO8601DateFormatC2Ev:
   40|      1|			: SimpleDateFormat(LOG4CXX_STR("yyyy-MM-dd HH:mm:ss,SSS")) {}
  ------------------
  |  |   51|      1|		#define LOG4CXX_STR(str) str
  ------------------

_ZN7log4cxx7helpers6ObjectD2Ev:
  104|    176|		virtual ~Object() {}
_ZNK7log4cxx7helpers6Object11ClazzObject7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx3spi13OptionHandler18ClazzOptionHandler7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx8Appender13ClazzAppender7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx3spi18AppenderAttachable23ClazzAppenderAttachable7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx6Logger11ClazzLogger7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx3spi13LoggerFactory18ClazzLoggerFactory7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx3spi16LoggerRepository21ClazzLoggerRepository7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx3spi12LoggingEvent17ClazzLoggingEvent7getNameEv:
   46|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx7pattern14FormattingInfo19ClazzFormattingInfo7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx7pattern16PatternConverter21ClazzPatternConverter7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx7pattern28LoggingEventPatternConverter33ClazzLoggingEventPatternConverter7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx7pattern15NameAbbreviator20ClazzNameAbbreviator7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx7pattern20NamePatternConverter25ClazzNamePatternConverter7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx7pattern22LoggerPatternConverter27ClazzLoggerPatternConverter7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx7pattern23LiteralPatternConverter28ClazzLiteralPatternConverter7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx7pattern25ClassNamePatternConverter30ClazzClassNamePatternConverter7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx7helpers8TimeZone13ClazzTimeZone7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx7helpers10DateFormat15ClazzDateFormat7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx7helpers4Date9ClazzDate7getNameEv:
   46|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx7pattern20DatePatternConverter25ClazzDatePatternConverter7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx7pattern28FileLocationPatternConverter33ClazzFileLocationPatternConverter7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx7pattern28FullLocationPatternConverter33ClazzFullLocationPatternConverter7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx7pattern23IntegerPatternConverter28ClazzIntegerPatternConverter7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx7pattern28LineLocationPatternConverter33ClazzLineLocationPatternConverter7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx7pattern23MessagePatternConverter28ClazzMessagePatternConverter7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx7pattern29LineSeparatorPatternConverter34ClazzLineSeparatorPatternConverter7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx7pattern30MethodLocationPatternConverter35ClazzMethodLocationPatternConverter7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx7pattern21LevelPatternConverter26ClazzLevelPatternConverter7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx7pattern28RelativeTimePatternConverter33ClazzRelativeTimePatternConverter7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx7pattern22ThreadPatternConverter27ClazzThreadPatternConverter7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx7pattern19NDCPatternConverter24ClazzNDCPatternConverter7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx7pattern26PropertiesPatternConverter31ClazzPropertiesPatternConverter7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx7pattern36ThrowableInformationPatternConverter41ClazzThrowableInformationPatternConverter7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx7pattern30ThreadUsernamePatternConverter35ClazzThreadUsernamePatternConverter7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZN7log4cxx7pattern25ClassNamePatternConverter14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7pattern25ClassNamePatternConverter13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx7pattern20DatePatternConverter14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7pattern20DatePatternConverter13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx7pattern14FormattingInfo14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7pattern14FormattingInfo13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx7pattern28FullLocationPatternConverter14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7pattern28FullLocationPatternConverter13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx5Level14getStaticClassEv:
   79|      2|	const LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   80|      2|		static LOG4CXX_NS::helpers::WideLife<class> theClass; \
   81|      2|		return theClass;                                       \
   82|      2|	}                                                         \
_ZN7log4cxx5Level13registerClassEv:
   83|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   84|      2|		static LOG4CXX_NS::helpers::WideLife<LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   85|      2|		return classReg; \
   86|      2|	}\
_ZN7log4cxx7pattern21LevelPatternConverter14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7pattern21LevelPatternConverter13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx7pattern28LineLocationPatternConverter14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7pattern28LineLocationPatternConverter13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx7pattern29LineSeparatorPatternConverter14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7pattern29LineSeparatorPatternConverter13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx7helpers6Object14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7helpers6Object13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx3spi13OptionHandler14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx3spi13OptionHandler13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx3spi12ErrorHandler14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx3spi12ErrorHandler13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx3spi6Filter14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx3spi6Filter13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx3spi18AppenderAttachable14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx3spi18AppenderAttachable13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx3spi13LoggerFactory14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx3spi13LoggerFactory13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx3spi16LoggerRepository14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx3spi16LoggerRepository13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx6filter13DenyAllFilter14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx6filter13DenyAllFilter13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx3spi18RepositorySelector14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx3spi18RepositorySelector13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx7helpers10XMLDOMNode14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7helpers10XMLDOMNode13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx7helpers14XMLDOMDocument14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7helpers14XMLDOMDocument13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx7helpers13XMLDOMElement14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7helpers13XMLDOMElement13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx7helpers14XMLDOMNodeList14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7helpers14XMLDOMNodeList13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx3spi24TriggeringEventEvaluator14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx3spi24TriggeringEventEvaluator13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZNK7log4cxx3spi12ErrorHandler17ClazzErrorHandler7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx3spi6Filter11ClazzFilter7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx6filter13DenyAllFilter18ClazzDenyAllFilter7getNameEv:
   46|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx3spi18RepositorySelector23ClazzRepositorySelector7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx7helpers10XMLDOMNode15ClazzXMLDOMNode7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx7helpers14XMLDOMDocument19ClazzXMLDOMDocument7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx7helpers13XMLDOMElement18ClazzXMLDOMElement7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx7helpers14XMLDOMNodeList19ClazzXMLDOMNodeList7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx3spi24TriggeringEventEvaluator29ClazzTriggeringEventEvaluator7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx7helpers11InputStream16ClazzInputStream7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx7helpers15FileInputStream20ClazzFileInputStream7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZN7log4cxx7pattern22LoggerPatternConverter14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7pattern22LoggerPatternConverter13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx3spi12LoggingEvent14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx3spi12LoggingEvent13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZNK7log4cxx7helpers11InetAddress16ClazzInetAddress7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx7helpers6Socket11ClazzSocket7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZN7log4cxx7pattern28LoggingEventPatternConverter14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7pattern28LoggingEventPatternConverter13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZNK7log4cxx7helpers12OutputStream17ClazzOutputStream7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx7helpers6Writer11ClazzWriter7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx7helpers15SystemErrWriter20ClazzSystemErrWriter7getNameEv:
   46|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZN7log4cxx3spi25DefaultRepositorySelector14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx3spi25DefaultRepositorySelector13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZNK7log4cxx3spi25DefaultRepositorySelector30ClazzDefaultRepositorySelector7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx3spi12Configurator17ClazzConfigurator7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx9Hierarchy14ClazzHierarchy7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZN7log4cxx7pattern23MessagePatternConverter14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7pattern23MessagePatternConverter13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx7pattern30MethodLocationPatternConverter14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7pattern30MethodLocationPatternConverter13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx7pattern20NamePatternConverter14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7pattern20NamePatternConverter13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx7pattern19NDCPatternConverter14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7pattern19NDCPatternConverter13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZNK7log4cxx6Layout11ClazzLayout7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx16AppenderSkeleton21ClazzAppenderSkeleton7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx20PropertyConfigurator25ClazzPropertyConfigurator7getNameEv:
   46|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx7helpers14CharsetDecoder19ClazzCharsetDecoder7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx7rolling16TriggeringPolicy21ClazzTriggeringPolicy7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx7rolling6Action11ClazzAction7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx7rolling19RolloverDescription24ClazzRolloverDescription7getNameEv:
   46|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx7rolling13RollingPolicy18ClazzRollingPolicy7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx3xml15DOMConfigurator20ClazzDOMConfigurator7getNameEv:
   46|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZN7log4cxx7pattern16PatternConverter14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7pattern16PatternConverter13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZNK7log4cxx7helpers6Reader11ClazzReader7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx7helpers17InputStreamReader22ClazzInputStreamReader7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZN7log4cxx7pattern26PropertiesPatternConverter14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7pattern26PropertiesPatternConverter13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx20PropertyConfigurator14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx20PropertyConfigurator13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZNK7log4cxx7helpers22AppenderAttachableImpl27ClazzAppenderAttachableImpl7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx13AsyncAppender18ClazzAsyncAppender7getNameEv:
   46|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx20DefaultLoggerFactory25ClazzDefaultLoggerFactory7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx7helpers14CharsetEncoder19ClazzCharsetEncoder7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx7helpers18OutputStreamWriter23ClazzOutputStreamWriter7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx14WriterAppender19ClazzWriterAppender7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx12FileAppender17ClazzFileAppender7getNameEv:
   46|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx7rolling19RollingFileAppender24ClazzRollingFileAppender7getNameEv:
   46|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZN7log4cxx7helpers6Reader14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7helpers6Reader13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx7pattern28RelativeTimePatternConverter14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7pattern28RelativeTimePatternConverter13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx7rolling19RollingFileAppender14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7rolling19RollingFileAppender13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZNK7log4cxx7helpers16FileOutputStream21ClazzFileOutputStream7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx7rolling17RollingPolicyBase22ClazzRollingPolicyBase7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx7rolling24FixedWindowRollingPolicy29ClazzFixedWindowRollingPolicy7getNameEv:
   46|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx7rolling22TimeBasedRollingPolicy27ClazzTimeBasedRollingPolicy7getNameEv:
   46|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx7rolling25SizeBasedTriggeringPolicy30ClazzSizeBasedTriggeringPolicy7getNameEv:
   46|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx7helpers20OnlyOnceErrorHandler25ClazzOnlyOnceErrorHandler7getNameEv:
   46|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZN7log4cxx7rolling13RollingPolicy14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7rolling13RollingPolicy13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx7rolling17RollingPolicyBase14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7rolling17RollingPolicyBase13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx7rolling19RolloverDescription14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7rolling19RolloverDescription13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx7rolling25SizeBasedTriggeringPolicy14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7rolling25SizeBasedTriggeringPolicy13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx7helpers15SystemErrWriter14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7helpers15SystemErrWriter13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx7pattern22ThreadPatternConverter14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7pattern22ThreadPatternConverter13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx7pattern30ThreadUsernamePatternConverter14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7pattern30ThreadUsernamePatternConverter13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx7pattern36ThrowableInformationPatternConverter14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7pattern36ThrowableInformationPatternConverter13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx7rolling22TimeBasedRollingPolicy14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7rolling22TimeBasedRollingPolicy13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZNK7log4cxx7rolling16FileRenameAction21ClazzFileRenameAction7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx7rolling16GZCompressAction21ClazzGZCompressAction7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx7rolling17ZipCompressAction22ClazzZipCompressAction7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZN7log4cxx7helpers8TimeZone14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7helpers8TimeZone13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx7rolling16TriggeringPolicy14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7rolling16TriggeringPolicy13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx7helpers6Writer14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7helpers6Writer13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx14WriterAppender14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx14WriterAppender13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx7rolling17ZipCompressAction14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7rolling17ZipCompressAction13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx3xml15DOMConfigurator14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx3xml15DOMConfigurator13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZNK7log4cxx5varia20FallbackErrorHandler25ClazzFallbackErrorHandler7getNameEv:
   46|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx7rolling27FilterBasedTriggeringPolicy32ClazzFilterBasedTriggeringPolicy7getNameEv:
   46|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx3net12SMTPAppender17ClazzSMTPAppender7getNameEv:
   46|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZN7log4cxx7rolling6Action14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7rolling6Action13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx8Appender14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx8Appender13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx16AppenderSkeleton14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx16AppenderSkeleton13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx13AsyncAppender14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx13AsyncAppender13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx7helpers14CharsetDecoder14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7helpers14CharsetDecoder13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx7helpers14CharsetEncoder14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7helpers14CharsetEncoder13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZNK7log4cxx15ConsoleAppender20ClazzConsoleAppender7getNameEv:
   46|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx2db12ODBCAppender17ClazzODBCAppender7getNameEv:
   46|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx7helpers14DatagramPacket19ClazzDatagramPacket7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx7helpers14DatagramSocket19ClazzDatagramSocket7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx3net14SyslogAppender19ClazzSyslogAppender7getNameEv:
   46|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx3net14TelnetAppender19ClazzTelnetAppender7getNameEv:
   46|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx3net17XMLSocketAppender22ClazzXMLSocketAppender7getNameEv:
   46|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx13PatternLayout18ClazzPatternLayout7getNameEv:
   46|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx10JSONLayout15ClazzJSONLayout7getNameEv:
   46|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx10HTMLLayout15ClazzHTMLLayout7getNameEv:
   46|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx12SimpleLayout17ClazzSimpleLayout7getNameEv:
   46|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx3xml9XMLLayout14ClazzXMLLayout7getNameEv:
   46|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx6filter16LevelMatchFilter21ClazzLevelMatchFilter7getNameEv:
   46|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx6filter16LevelRangeFilter21ClazzLevelRangeFilter7getNameEv:
   46|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx6filter17StringMatchFilter22ClazzStringMatchFilter7getNameEv:
   46|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx6filter18LocationInfoFilter23ClazzLocationInfoFilter7getNameEv:
   46|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx7rolling22ManualTriggeringPolicy27ClazzManualTriggeringPolicy7getNameEv:
   46|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZN7log4cxx3spi12Configurator14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx3spi12Configurator13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx15ConsoleAppender14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx15ConsoleAppender13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZNK7log4cxx7helpers15SystemOutWriter20ClazzSystemOutWriter7getNameEv:
   46|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZN7log4cxx7helpers4Date14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7helpers4Date13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx7helpers10DateFormat14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7helpers10DateFormat13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx20DefaultLoggerFactory14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx20DefaultLoggerFactory13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx5varia20FallbackErrorHandler14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx5varia20FallbackErrorHandler13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx12FileAppender14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx12FileAppender13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZNK7log4cxx7helpers14BufferedWriter19ClazzBufferedWriter7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZN7log4cxx7helpers15FileInputStream14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7helpers15FileInputStream13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx7helpers16FileOutputStream14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7helpers16FileOutputStream13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx7rolling16FileRenameAction14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7rolling16FileRenameAction13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx7rolling27FilterBasedTriggeringPolicy14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7rolling27FilterBasedTriggeringPolicy13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx7rolling24FixedWindowRollingPolicy14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7rolling24FixedWindowRollingPolicy13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZNK7log4cxx7helpers7Integer12ClazzInteger7getNameEv:
   46|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZN7log4cxx7rolling16GZCompressAction14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7rolling16GZCompressAction13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx9Hierarchy14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx9Hierarchy13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx10HTMLLayout14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx10HTMLLayout13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx7helpers11InputStream14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7helpers11InputStream13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx7helpers17InputStreamReader14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7helpers17InputStreamReader13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx7helpers7Integer14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7helpers7Integer13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx7pattern23IntegerPatternConverter14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7pattern23IntegerPatternConverter13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx10JSONLayout14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx10JSONLayout13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx6Layout14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx6Layout13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx6filter16LevelMatchFilter14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx6filter16LevelMatchFilter13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx6filter16LevelRangeFilter14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx6filter16LevelRangeFilter13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx6filter18LocationInfoFilter14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx6filter18LocationInfoFilter13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx6Logger14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx6Logger13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx7rolling22ManualTriggeringPolicy14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7rolling22ManualTriggeringPolicy13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx7pattern15NameAbbreviator14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7pattern15NameAbbreviator13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx7pattern14NOPAbbreviator14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7pattern14NOPAbbreviator13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx7pattern21MaxElementAbbreviator14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7pattern21MaxElementAbbreviator13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx7pattern18PatternAbbreviator14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7pattern18PatternAbbreviator13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZNK7log4cxx7pattern14NOPAbbreviator19ClazzNOPAbbreviator7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx7pattern21MaxElementAbbreviator26ClazzMaxElementAbbreviator7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx7pattern18PatternAbbreviator23ClazzPatternAbbreviator7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZN7log4cxx2db12ODBCAppender14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx2db12ODBCAppender13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZNK7log4cxx7pattern19MDCPatternConverter24ClazzMDCPatternConverter7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx7pattern33ShortFileLocationPatternConverter38ClazzShortFileLocationPatternConverter7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZN7log4cxx7helpers20OnlyOnceErrorHandler14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7helpers20OnlyOnceErrorHandler13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx7helpers12OutputStream14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7helpers12OutputStream13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx7helpers18OutputStreamWriter14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7helpers18OutputStreamWriter13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx13PatternLayout14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx13PatternLayout13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZNK7log4cxx7pattern24ColorEndPatternConverter29ClazzColorEndPatternConverter7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZNK7log4cxx7pattern26ColorStartPatternConverter31ClazzColorStartPatternConverter7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZN7log4cxx7pattern33ShortFileLocationPatternConverter14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7pattern33ShortFileLocationPatternConverter13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx12SimpleLayout14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx12SimpleLayout13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx3net16DefaultEvaluator14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx3net16DefaultEvaluator13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx3net12SMTPAppender14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx3net12SMTPAppender13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZNK7log4cxx3net16DefaultEvaluator21ClazzDefaultEvaluator7getNameEv:
   46|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZN7log4cxx6filter17StringMatchFilter14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx6filter17StringMatchFilter13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx7helpers15SystemOutWriter14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7helpers15SystemOutWriter13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx3xml9XMLLayout14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx3xml9XMLLayout13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx3net14TelnetAppender14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx3net14TelnetAppender13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx3net17XMLSocketAppender14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx3net17XMLSocketAppender13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx3net14SyslogAppender14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx3net14SyslogAppender13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx7helpers22AppenderAttachableImpl14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7helpers22AppenderAttachableImpl13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx7helpers14BufferedWriter14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7helpers14BufferedWriter13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx7pattern26ColorStartPatternConverter14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7pattern26ColorStartPatternConverter13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx7pattern24ColorEndPatternConverter14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7pattern24ColorEndPatternConverter13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx7pattern28FileLocationPatternConverter14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7pattern28FileLocationPatternConverter13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx7helpers11InetAddress14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7helpers11InetAddress13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx7pattern23LiteralPatternConverter14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7pattern23LiteralPatternConverter13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx7pattern19MDCPatternConverter14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7pattern19MDCPatternConverter13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx7helpers6Socket14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7helpers6Socket13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZNK7log4cxx7helpers18SocketOutputStream23ClazzSocketOutputStream7getNameEv:
   32|      2|			LogString getName() const override { return LOG4CXX_STR(#object); }\
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
_ZN7log4cxx7helpers18SocketOutputStream14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7helpers18SocketOutputStream13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx7helpers14DatagramPacket14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7helpers14DatagramPacket13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\
_ZN7log4cxx7helpers14DatagramSocket14getStaticClassEv:
   64|      2|	const ::LOG4CXX_NS::helpers::Class& object::getStaticClass() { \
   65|      2|		static ::LOG4CXX_NS::helpers::WideLife<Clazz##object> theClass; \
   66|      2|		return theClass;                                       \
   67|      2|	}                                                                      \
_ZN7log4cxx7helpers14DatagramSocket13registerClassEv:
   68|      2|	const LOG4CXX_NS::helpers::ClassRegistration& object::registerClass() {   \
   69|      2|		static ::LOG4CXX_NS::helpers::WideLife<::LOG4CXX_NS::helpers::ClassRegistration> classReg(object::getStaticClass); \
   70|      2|		return classReg; \
   71|      2|	}\

_ZNK7log4cxx7helpers8TimeZone5getIDEv:
   46|      6|		{
   47|      6|			return id;
   48|      6|		}

_ZN7log4cxx7helpers8WideLifeINS_7pattern25ClassNamePatternConverter30ClazzClassNamePatternConverterEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern25ClassNamePatternConverter30ClazzClassNamePatternConverterEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern25ClassNamePatternConverter30ClazzClassNamePatternConverterEEcvRS4_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_17ClassRegistrationEEC2IRFRKNS0_5ClassEvEJEQntsr3stdE7same_asINS1_IT_EETL0__EEEOSA_DpOT0_:
   48|    228|	{		
   49|    228|		new(&storage) T(std::forward<Arg0>(arg0), std::forward<Args>(args)...);
   50|    228|	}
_ZN7log4cxx7helpers8WideLifeINS0_17ClassRegistrationEE5valueEv:
   62|    228|	{
   63|    228|		return *reinterpret_cast<T*>(&storage);
   64|    228|	}
_ZN7log4cxx7helpers8WideLifeINS0_17ClassRegistrationEEcvRS2_Ev:
   72|    228|	{
   73|    228|		return value();
   74|    228|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern20DatePatternConverter25ClazzDatePatternConverterEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern20DatePatternConverter25ClazzDatePatternConverterEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern20DatePatternConverter25ClazzDatePatternConverterEEcvRS4_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern14FormattingInfo19ClazzFormattingInfoEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern14FormattingInfo19ClazzFormattingInfoEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern14FormattingInfo19ClazzFormattingInfoEEcvRS4_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINSt3__110shared_ptrINS_7pattern14FormattingInfoEEEEC2IS6_JEQntsr3stdE7same_asINS1_IT_EETL0__EEEOS9_DpOT0_:
   48|      1|	{		
   49|      1|		new(&storage) T(std::forward<Arg0>(arg0), std::forward<Args>(args)...);
   50|      1|	}
_ZN7log4cxx7helpers8WideLifeINSt3__110shared_ptrINS_7pattern14FormattingInfoEEEED2Ev:
   53|      1|	{
   54|       |#if LOG4CXX_EVENTS_AT_EXIT
   55|       |		// keep the holded value alive
   56|       |#else
   57|      1|		value().~T();
   58|      1|#endif
   59|      1|	}
_ZN7log4cxx7helpers8WideLifeINSt3__110shared_ptrINS_7pattern14FormattingInfoEEEE5valueEv:
   62|     78|	{
   63|     78|		return *reinterpret_cast<T*>(&storage);
   64|     78|	}
_ZN7log4cxx7helpers8WideLifeINSt3__110shared_ptrINS_7pattern14FormattingInfoEEEEcvRS6_Ev:
   72|     77|	{
   73|     77|		return value();
   74|     77|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern28FullLocationPatternConverter33ClazzFullLocationPatternConverterEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern28FullLocationPatternConverter33ClazzFullLocationPatternConverterEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern28FullLocationPatternConverter33ClazzFullLocationPatternConverterEEcvRS4_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_5Level10LevelClassEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_5Level10LevelClassEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_5Level10LevelClassEEcvRS3_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINSt3__110shared_ptrINS_5LevelEEEEC2IS5_JEQntsr3stdE7same_asINS1_IT_EETL0__EEEOS8_DpOT0_:
   48|      1|	{		
   49|      1|		new(&storage) T(std::forward<Arg0>(arg0), std::forward<Args>(args)...);
   50|      1|	}
_ZN7log4cxx7helpers8WideLifeINSt3__110shared_ptrINS_5LevelEEEED2Ev:
   53|      1|	{
   54|       |#if LOG4CXX_EVENTS_AT_EXIT
   55|       |		// keep the holded value alive
   56|       |#else
   57|      1|		value().~T();
   58|      1|#endif
   59|      1|	}
_ZN7log4cxx7helpers8WideLifeINSt3__110shared_ptrINS_5LevelEEEE5valueEv:
   62|     75|	{
   63|     75|		return *reinterpret_cast<T*>(&storage);
   64|     75|	}
_ZN7log4cxx7helpers8WideLifeINSt3__110shared_ptrINS_5LevelEEEEcvRS5_Ev:
   72|     74|	{
   73|     74|		return value();
   74|     74|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern21LevelPatternConverter26ClazzLevelPatternConverterEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern21LevelPatternConverter26ClazzLevelPatternConverterEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern21LevelPatternConverter26ClazzLevelPatternConverterEEcvRS4_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern28LineLocationPatternConverter33ClazzLineLocationPatternConverterEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern28LineLocationPatternConverter33ClazzLineLocationPatternConverterEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern28LineLocationPatternConverter33ClazzLineLocationPatternConverterEEcvRS4_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern29LineSeparatorPatternConverter34ClazzLineSeparatorPatternConverterEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern29LineSeparatorPatternConverter34ClazzLineSeparatorPatternConverterEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern29LineSeparatorPatternConverter34ClazzLineSeparatorPatternConverterEEcvRS4_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_6Object11ClazzObjectEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_6Object11ClazzObjectEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_6Object11ClazzObjectEEcvRS3_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_3spi13OptionHandler18ClazzOptionHandlerEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_3spi13OptionHandler18ClazzOptionHandlerEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_3spi13OptionHandler18ClazzOptionHandlerEEcvRS4_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_3spi12ErrorHandler17ClazzErrorHandlerEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_3spi12ErrorHandler17ClazzErrorHandlerEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_3spi12ErrorHandler17ClazzErrorHandlerEEcvRS4_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_3spi6Filter11ClazzFilterEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_3spi6Filter11ClazzFilterEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_3spi6Filter11ClazzFilterEEcvRS4_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_3spi18AppenderAttachable23ClazzAppenderAttachableEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_3spi18AppenderAttachable23ClazzAppenderAttachableEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_3spi18AppenderAttachable23ClazzAppenderAttachableEEcvRS4_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_3spi13LoggerFactory18ClazzLoggerFactoryEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_3spi13LoggerFactory18ClazzLoggerFactoryEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_3spi13LoggerFactory18ClazzLoggerFactoryEEcvRS4_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_3spi16LoggerRepository21ClazzLoggerRepositoryEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_3spi16LoggerRepository21ClazzLoggerRepositoryEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_3spi16LoggerRepository21ClazzLoggerRepositoryEEcvRS4_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_6filter13DenyAllFilter18ClazzDenyAllFilterEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_6filter13DenyAllFilter18ClazzDenyAllFilterEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_6filter13DenyAllFilter18ClazzDenyAllFilterEEcvRS4_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_3spi18RepositorySelector23ClazzRepositorySelectorEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_3spi18RepositorySelector23ClazzRepositorySelectorEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_3spi18RepositorySelector23ClazzRepositorySelectorEEcvRS4_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_10XMLDOMNode15ClazzXMLDOMNodeEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_10XMLDOMNode15ClazzXMLDOMNodeEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_10XMLDOMNode15ClazzXMLDOMNodeEEcvRS3_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_14XMLDOMDocument19ClazzXMLDOMDocumentEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_14XMLDOMDocument19ClazzXMLDOMDocumentEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_14XMLDOMDocument19ClazzXMLDOMDocumentEEcvRS3_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_13XMLDOMElement18ClazzXMLDOMElementEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_13XMLDOMElement18ClazzXMLDOMElementEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_13XMLDOMElement18ClazzXMLDOMElementEEcvRS3_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_14XMLDOMNodeList19ClazzXMLDOMNodeListEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_14XMLDOMNodeList19ClazzXMLDOMNodeListEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_14XMLDOMNodeList19ClazzXMLDOMNodeListEEcvRS3_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_3spi24TriggeringEventEvaluator29ClazzTriggeringEventEvaluatorEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_3spi24TriggeringEventEvaluator29ClazzTriggeringEventEvaluatorEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_3spi24TriggeringEventEvaluator29ClazzTriggeringEventEvaluatorEEcvRS4_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern22LoggerPatternConverter27ClazzLoggerPatternConverterEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern22LoggerPatternConverter27ClazzLoggerPatternConverterEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern22LoggerPatternConverter27ClazzLoggerPatternConverterEEcvRS4_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_3spi12LoggingEvent17ClazzLoggingEventEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_3spi12LoggingEvent17ClazzLoggingEventEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_3spi12LoggingEvent17ClazzLoggingEventEEcvRS4_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern28LoggingEventPatternConverter33ClazzLoggingEventPatternConverterEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern28LoggingEventPatternConverter33ClazzLoggingEventPatternConverterEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern28LoggingEventPatternConverter33ClazzLoggingEventPatternConverterEEcvRS4_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_3spi25DefaultRepositorySelector30ClazzDefaultRepositorySelectorEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_3spi25DefaultRepositorySelector30ClazzDefaultRepositorySelectorEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_3spi25DefaultRepositorySelector30ClazzDefaultRepositorySelectorEEcvRS4_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern23MessagePatternConverter28ClazzMessagePatternConverterEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern23MessagePatternConverter28ClazzMessagePatternConverterEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern23MessagePatternConverter28ClazzMessagePatternConverterEEcvRS4_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern30MethodLocationPatternConverter35ClazzMethodLocationPatternConverterEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern30MethodLocationPatternConverter35ClazzMethodLocationPatternConverterEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern30MethodLocationPatternConverter35ClazzMethodLocationPatternConverterEEcvRS4_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern20NamePatternConverter25ClazzNamePatternConverterEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern20NamePatternConverter25ClazzNamePatternConverterEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern20NamePatternConverter25ClazzNamePatternConverterEEcvRS4_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern19NDCPatternConverter24ClazzNDCPatternConverterEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern19NDCPatternConverter24ClazzNDCPatternConverterEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern19NDCPatternConverter24ClazzNDCPatternConverterEEcvRS4_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern16PatternConverter21ClazzPatternConverterEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern16PatternConverter21ClazzPatternConverterEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern16PatternConverter21ClazzPatternConverterEEcvRS4_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern26PropertiesPatternConverter31ClazzPropertiesPatternConverterEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern26PropertiesPatternConverter31ClazzPropertiesPatternConverterEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern26PropertiesPatternConverter31ClazzPropertiesPatternConverterEEcvRS4_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_20PropertyConfigurator25ClazzPropertyConfiguratorEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_20PropertyConfigurator25ClazzPropertyConfiguratorEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_20PropertyConfigurator25ClazzPropertyConfiguratorEEcvRS3_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_6Reader11ClazzReaderEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_6Reader11ClazzReaderEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_6Reader11ClazzReaderEEcvRS3_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern28RelativeTimePatternConverter33ClazzRelativeTimePatternConverterEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern28RelativeTimePatternConverter33ClazzRelativeTimePatternConverterEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern28RelativeTimePatternConverter33ClazzRelativeTimePatternConverterEEcvRS4_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7rolling19RollingFileAppender24ClazzRollingFileAppenderEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7rolling19RollingFileAppender24ClazzRollingFileAppenderEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7rolling19RollingFileAppender24ClazzRollingFileAppenderEEcvRS4_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7rolling13RollingPolicy18ClazzRollingPolicyEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7rolling13RollingPolicy18ClazzRollingPolicyEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7rolling13RollingPolicy18ClazzRollingPolicyEEcvRS4_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7rolling17RollingPolicyBase22ClazzRollingPolicyBaseEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7rolling17RollingPolicyBase22ClazzRollingPolicyBaseEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7rolling17RollingPolicyBase22ClazzRollingPolicyBaseEEcvRS4_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7rolling19RolloverDescription24ClazzRolloverDescriptionEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7rolling19RolloverDescription24ClazzRolloverDescriptionEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7rolling19RolloverDescription24ClazzRolloverDescriptionEEcvRS4_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7rolling25SizeBasedTriggeringPolicy30ClazzSizeBasedTriggeringPolicyEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7rolling25SizeBasedTriggeringPolicy30ClazzSizeBasedTriggeringPolicyEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7rolling25SizeBasedTriggeringPolicy30ClazzSizeBasedTriggeringPolicyEEcvRS4_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_15SystemErrWriter20ClazzSystemErrWriterEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_15SystemErrWriter20ClazzSystemErrWriterEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_15SystemErrWriter20ClazzSystemErrWriterEEcvRS3_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern22ThreadPatternConverter27ClazzThreadPatternConverterEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern22ThreadPatternConverter27ClazzThreadPatternConverterEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern22ThreadPatternConverter27ClazzThreadPatternConverterEEcvRS4_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern30ThreadUsernamePatternConverter35ClazzThreadUsernamePatternConverterEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern30ThreadUsernamePatternConverter35ClazzThreadUsernamePatternConverterEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern30ThreadUsernamePatternConverter35ClazzThreadUsernamePatternConverterEEcvRS4_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern36ThrowableInformationPatternConverter41ClazzThrowableInformationPatternConverterEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern36ThrowableInformationPatternConverter41ClazzThrowableInformationPatternConverterEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern36ThrowableInformationPatternConverter41ClazzThrowableInformationPatternConverterEEcvRS4_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7rolling22TimeBasedRollingPolicy27ClazzTimeBasedRollingPolicyEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7rolling22TimeBasedRollingPolicy27ClazzTimeBasedRollingPolicyEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7rolling22TimeBasedRollingPolicy27ClazzTimeBasedRollingPolicyEEcvRS4_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINSt3__110shared_ptrINS0_8TimeZoneEEEEC2INS3_INS0_12TimeZoneImpl13LocalTimeZoneEEEJEQntsr3stdE7same_asINS1_IT_EETL0__EEEOSB_DpOT0_:
   48|      1|	{		
   49|      1|		new(&storage) T(std::forward<Arg0>(arg0), std::forward<Args>(args)...);
   50|      1|	}
_ZN7log4cxx7helpers8WideLifeINSt3__110shared_ptrINS0_8TimeZoneEEEED2Ev:
   53|      2|	{
   54|       |#if LOG4CXX_EVENTS_AT_EXIT
   55|       |		// keep the holded value alive
   56|       |#else
   57|      2|		value().~T();
   58|      2|#endif
   59|      2|	}
_ZN7log4cxx7helpers8WideLifeINSt3__110shared_ptrINS0_8TimeZoneEEEE5valueEv:
   62|     20|	{
   63|     20|		return *reinterpret_cast<T*>(&storage);
   64|     20|	}
_ZN7log4cxx7helpers8WideLifeINSt3__110shared_ptrINS0_8TimeZoneEEEEcvRS5_Ev:
   72|     18|	{
   73|     18|		return value();
   74|     18|	}
_ZN7log4cxx7helpers8WideLifeINSt3__110shared_ptrINS0_8TimeZoneEEEEC2INS3_INS0_12TimeZoneImpl11GMTTimeZoneEEEJEQntsr3stdE7same_asINS1_IT_EETL0__EEEOSB_DpOT0_:
   48|      1|	{		
   49|      1|		new(&storage) T(std::forward<Arg0>(arg0), std::forward<Args>(args)...);
   50|      1|	}
_ZN7log4cxx7helpers8WideLifeINS0_8TimeZone13ClazzTimeZoneEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_8TimeZone13ClazzTimeZoneEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_8TimeZone13ClazzTimeZoneEEcvRS3_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7rolling16TriggeringPolicy21ClazzTriggeringPolicyEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7rolling16TriggeringPolicy21ClazzTriggeringPolicyEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7rolling16TriggeringPolicy21ClazzTriggeringPolicyEEcvRS4_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_6Writer11ClazzWriterEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_6Writer11ClazzWriterEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_6Writer11ClazzWriterEEcvRS3_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_14WriterAppender19ClazzWriterAppenderEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_14WriterAppender19ClazzWriterAppenderEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_14WriterAppender19ClazzWriterAppenderEEcvRS3_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7rolling17ZipCompressAction22ClazzZipCompressActionEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7rolling17ZipCompressAction22ClazzZipCompressActionEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7rolling17ZipCompressAction22ClazzZipCompressActionEEcvRS4_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_3xml15DOMConfigurator20ClazzDOMConfiguratorEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_3xml15DOMConfigurator20ClazzDOMConfiguratorEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_3xml15DOMConfigurator20ClazzDOMConfiguratorEEcvRS4_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7rolling6Action11ClazzActionEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7rolling6Action11ClazzActionEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7rolling6Action11ClazzActionEEcvRS4_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_8Appender13ClazzAppenderEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_8Appender13ClazzAppenderEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_8Appender13ClazzAppenderEEcvRS3_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_16AppenderSkeleton21ClazzAppenderSkeletonEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_16AppenderSkeleton21ClazzAppenderSkeletonEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_16AppenderSkeleton21ClazzAppenderSkeletonEEcvRS3_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
aprinitializer.cpp:_ZN7log4cxx7helpers8WideLifeIN12_GLOBAL__N_115apr_environmentEEC2Ev:
   40|      1|	{		
   41|      1|		new(&storage) T();
   42|      1|	}
aprinitializer.cpp:_ZN7log4cxx7helpers8WideLifeIN12_GLOBAL__N_115apr_environmentEED2Ev:
   53|      1|	{
   54|       |#if LOG4CXX_EVENTS_AT_EXIT
   55|       |		// keep the holded value alive
   56|       |#else
   57|      1|		value().~T();
   58|      1|#endif
   59|      1|	}
aprinitializer.cpp:_ZN7log4cxx7helpers8WideLifeIN12_GLOBAL__N_115apr_environmentEE5valueEv:
   62|      1|	{
   63|      1|		return *reinterpret_cast<T*>(&storage);
   64|      1|	}
_ZN7log4cxx7helpers8WideLifeINS0_14APRInitializerEEC2Ev:
   40|      1|	{		
   41|      1|		new(&storage) T();
   42|      1|	}
_ZN7log4cxx7helpers8WideLifeINS0_14APRInitializerEED2Ev:
   53|      1|	{
   54|       |#if LOG4CXX_EVENTS_AT_EXIT
   55|       |		// keep the holded value alive
   56|       |#else
   57|      1|		value().~T();
   58|      1|#endif
   59|      1|	}
_ZN7log4cxx7helpers8WideLifeINS0_14APRInitializerEE5valueEv:
   62|      5|	{
   63|      5|		return *reinterpret_cast<T*>(&storage);
   64|      5|	}
_ZN7log4cxx7helpers8WideLifeINS0_14APRInitializerEEcvRS2_Ev:
   72|      4|	{
   73|      4|		return value();
   74|      4|	}
_ZN7log4cxx7helpers8WideLifeINS_13AsyncAppender18ClazzAsyncAppenderEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_13AsyncAppender18ClazzAsyncAppenderEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_13AsyncAppender18ClazzAsyncAppenderEEcvRS3_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_14CharsetDecoder19ClazzCharsetDecoderEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_14CharsetDecoder19ClazzCharsetDecoderEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_14CharsetDecoder19ClazzCharsetDecoderEEcvRS3_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_14CharsetEncoder19ClazzCharsetEncoderEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_14CharsetEncoder19ClazzCharsetEncoderEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_14CharsetEncoder19ClazzCharsetEncoderEEcvRS3_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINSt3__13mapINS2_12basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEEPKNS0_5ClassENS2_4lessIS9_EENS7_INS2_4pairIKS9_SC_EEEEEEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINSt3__13mapINS2_12basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEEPKNS0_5ClassENS2_4lessIS9_EENS7_INS2_4pairIKS9_SC_EEEEEEE5valueEv:
   62|    228|	{
   63|    228|		return *reinterpret_cast<T*>(&storage);
   64|    228|	}
_ZN7log4cxx7helpers8WideLifeINSt3__13mapINS2_12basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEEPKNS0_5ClassENS2_4lessIS9_EENS7_INS2_4pairIKS9_SC_EEEEEEEcvRSJ_Ev:
   72|    228|	{
   73|    228|		return value();
   74|    228|	}
_ZN7log4cxx7helpers8WideLifeINS_3spi12Configurator17ClazzConfiguratorEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_3spi12Configurator17ClazzConfiguratorEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_3spi12Configurator17ClazzConfiguratorEEcvRS4_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_15ConsoleAppender20ClazzConsoleAppenderEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_15ConsoleAppender20ClazzConsoleAppenderEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_15ConsoleAppender20ClazzConsoleAppenderEEcvRS3_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_4Date9ClazzDateEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_4Date9ClazzDateEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_4Date9ClazzDateEEcvRS3_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_10DateFormat15ClazzDateFormatEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_10DateFormat15ClazzDateFormatEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_10DateFormat15ClazzDateFormatEEcvRS3_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_20DefaultLoggerFactory25ClazzDefaultLoggerFactoryEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_20DefaultLoggerFactory25ClazzDefaultLoggerFactoryEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_20DefaultLoggerFactory25ClazzDefaultLoggerFactoryEEcvRS3_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_5varia20FallbackErrorHandler25ClazzFallbackErrorHandlerEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_5varia20FallbackErrorHandler25ClazzFallbackErrorHandlerEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_5varia20FallbackErrorHandler25ClazzFallbackErrorHandlerEEcvRS4_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_12FileAppender17ClazzFileAppenderEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_12FileAppender17ClazzFileAppenderEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_12FileAppender17ClazzFileAppenderEEcvRS3_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_15FileInputStream20ClazzFileInputStreamEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_15FileInputStream20ClazzFileInputStreamEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_15FileInputStream20ClazzFileInputStreamEEcvRS3_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_16FileOutputStream21ClazzFileOutputStreamEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_16FileOutputStream21ClazzFileOutputStreamEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_16FileOutputStream21ClazzFileOutputStreamEEcvRS3_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7rolling16FileRenameAction21ClazzFileRenameActionEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7rolling16FileRenameAction21ClazzFileRenameActionEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7rolling16FileRenameAction21ClazzFileRenameActionEEcvRS4_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7rolling27FilterBasedTriggeringPolicy32ClazzFilterBasedTriggeringPolicyEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7rolling27FilterBasedTriggeringPolicy32ClazzFilterBasedTriggeringPolicyEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7rolling27FilterBasedTriggeringPolicy32ClazzFilterBasedTriggeringPolicyEEcvRS4_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7rolling24FixedWindowRollingPolicy29ClazzFixedWindowRollingPolicyEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7rolling24FixedWindowRollingPolicy29ClazzFixedWindowRollingPolicyEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7rolling24FixedWindowRollingPolicy29ClazzFixedWindowRollingPolicyEEcvRS4_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7rolling16GZCompressAction21ClazzGZCompressActionEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7rolling16GZCompressAction21ClazzGZCompressActionEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7rolling16GZCompressAction21ClazzGZCompressActionEEcvRS4_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_9Hierarchy14ClazzHierarchyEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_9Hierarchy14ClazzHierarchyEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_9Hierarchy14ClazzHierarchyEEcvRS3_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_10HTMLLayout15ClazzHTMLLayoutEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_10HTMLLayout15ClazzHTMLLayoutEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_10HTMLLayout15ClazzHTMLLayoutEEcvRS3_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_11InputStream16ClazzInputStreamEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_11InputStream16ClazzInputStreamEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_11InputStream16ClazzInputStreamEEcvRS3_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_17InputStreamReader22ClazzInputStreamReaderEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_17InputStreamReader22ClazzInputStreamReaderEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_17InputStreamReader22ClazzInputStreamReaderEEcvRS3_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_7Integer12ClazzIntegerEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_7Integer12ClazzIntegerEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_7Integer12ClazzIntegerEEcvRS3_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern23IntegerPatternConverter28ClazzIntegerPatternConverterEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern23IntegerPatternConverter28ClazzIntegerPatternConverterEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern23IntegerPatternConverter28ClazzIntegerPatternConverterEEcvRS4_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_10JSONLayout15ClazzJSONLayoutEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_10JSONLayout15ClazzJSONLayoutEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_10JSONLayout15ClazzJSONLayoutEEcvRS3_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_6Layout11ClazzLayoutEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_6Layout11ClazzLayoutEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_6Layout11ClazzLayoutEEcvRS3_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_6filter16LevelMatchFilter21ClazzLevelMatchFilterEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_6filter16LevelMatchFilter21ClazzLevelMatchFilterEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_6filter16LevelMatchFilter21ClazzLevelMatchFilterEEcvRS4_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_6filter16LevelRangeFilter21ClazzLevelRangeFilterEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_6filter16LevelRangeFilter21ClazzLevelRangeFilterEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_6filter16LevelRangeFilter21ClazzLevelRangeFilterEEcvRS4_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_6filter18LocationInfoFilter23ClazzLocationInfoFilterEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_6filter18LocationInfoFilter23ClazzLocationInfoFilterEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_6filter18LocationInfoFilter23ClazzLocationInfoFilterEEcvRS4_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_6Logger11ClazzLoggerEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_6Logger11ClazzLoggerEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_6Logger11ClazzLoggerEEcvRS3_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7rolling22ManualTriggeringPolicy27ClazzManualTriggeringPolicyEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7rolling22ManualTriggeringPolicy27ClazzManualTriggeringPolicyEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7rolling22ManualTriggeringPolicy27ClazzManualTriggeringPolicyEEcvRS4_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern15NameAbbreviator20ClazzNameAbbreviatorEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern15NameAbbreviator20ClazzNameAbbreviatorEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern15NameAbbreviator20ClazzNameAbbreviatorEEcvRS4_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern14NOPAbbreviator19ClazzNOPAbbreviatorEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern14NOPAbbreviator19ClazzNOPAbbreviatorEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern14NOPAbbreviator19ClazzNOPAbbreviatorEEcvRS4_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern21MaxElementAbbreviator26ClazzMaxElementAbbreviatorEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern21MaxElementAbbreviator26ClazzMaxElementAbbreviatorEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern21MaxElementAbbreviator26ClazzMaxElementAbbreviatorEEcvRS4_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern18PatternAbbreviator23ClazzPatternAbbreviatorEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern18PatternAbbreviator23ClazzPatternAbbreviatorEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern18PatternAbbreviator23ClazzPatternAbbreviatorEEcvRS4_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_2db12ODBCAppender17ClazzODBCAppenderEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_2db12ODBCAppender17ClazzODBCAppenderEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_2db12ODBCAppender17ClazzODBCAppenderEEcvRS4_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_20OnlyOnceErrorHandler25ClazzOnlyOnceErrorHandlerEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_20OnlyOnceErrorHandler25ClazzOnlyOnceErrorHandlerEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_20OnlyOnceErrorHandler25ClazzOnlyOnceErrorHandlerEEcvRS3_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_12OutputStream17ClazzOutputStreamEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_12OutputStream17ClazzOutputStreamEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_12OutputStream17ClazzOutputStreamEEcvRS3_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_18OutputStreamWriter23ClazzOutputStreamWriterEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_18OutputStreamWriter23ClazzOutputStreamWriterEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_18OutputStreamWriter23ClazzOutputStreamWriterEEcvRS3_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_13PatternLayout18ClazzPatternLayoutEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_13PatternLayout18ClazzPatternLayoutEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_13PatternLayout18ClazzPatternLayoutEEcvRS3_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern33ShortFileLocationPatternConverter38ClazzShortFileLocationPatternConverterEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern33ShortFileLocationPatternConverter38ClazzShortFileLocationPatternConverterEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern33ShortFileLocationPatternConverter38ClazzShortFileLocationPatternConverterEEcvRS4_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_12SimpleLayout17ClazzSimpleLayoutEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_12SimpleLayout17ClazzSimpleLayoutEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_12SimpleLayout17ClazzSimpleLayoutEEcvRS3_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_3net16DefaultEvaluator21ClazzDefaultEvaluatorEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_3net16DefaultEvaluator21ClazzDefaultEvaluatorEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_3net16DefaultEvaluator21ClazzDefaultEvaluatorEEcvRS4_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_3net12SMTPAppender17ClazzSMTPAppenderEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_3net12SMTPAppender17ClazzSMTPAppenderEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_3net12SMTPAppender17ClazzSMTPAppenderEEcvRS4_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_6filter17StringMatchFilter22ClazzStringMatchFilterEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_6filter17StringMatchFilter22ClazzStringMatchFilterEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_6filter17StringMatchFilter22ClazzStringMatchFilterEEcvRS4_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_15SystemOutWriter20ClazzSystemOutWriterEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_15SystemOutWriter20ClazzSystemOutWriterEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_15SystemOutWriter20ClazzSystemOutWriterEEcvRS3_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_3xml9XMLLayout14ClazzXMLLayoutEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_3xml9XMLLayout14ClazzXMLLayoutEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_3xml9XMLLayout14ClazzXMLLayoutEEcvRS4_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_3net14TelnetAppender19ClazzTelnetAppenderEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_3net14TelnetAppender19ClazzTelnetAppenderEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_3net14TelnetAppender19ClazzTelnetAppenderEEcvRS4_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_3net17XMLSocketAppender22ClazzXMLSocketAppenderEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_3net17XMLSocketAppender22ClazzXMLSocketAppenderEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_3net17XMLSocketAppender22ClazzXMLSocketAppenderEEcvRS4_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_3net14SyslogAppender19ClazzSyslogAppenderEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_3net14SyslogAppender19ClazzSyslogAppenderEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_3net14SyslogAppender19ClazzSyslogAppenderEEcvRS4_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_22AppenderAttachableImpl27ClazzAppenderAttachableImplEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_22AppenderAttachableImpl27ClazzAppenderAttachableImplEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_22AppenderAttachableImpl27ClazzAppenderAttachableImplEEcvRS3_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_14BufferedWriter19ClazzBufferedWriterEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_14BufferedWriter19ClazzBufferedWriterEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_14BufferedWriter19ClazzBufferedWriterEEcvRS3_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern26ColorStartPatternConverter31ClazzColorStartPatternConverterEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern26ColorStartPatternConverter31ClazzColorStartPatternConverterEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern26ColorStartPatternConverter31ClazzColorStartPatternConverterEEcvRS4_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern24ColorEndPatternConverter29ClazzColorEndPatternConverterEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern24ColorEndPatternConverter29ClazzColorEndPatternConverterEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern24ColorEndPatternConverter29ClazzColorEndPatternConverterEEcvRS4_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern28FileLocationPatternConverter33ClazzFileLocationPatternConverterEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern28FileLocationPatternConverter33ClazzFileLocationPatternConverterEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern28FileLocationPatternConverter33ClazzFileLocationPatternConverterEEcvRS4_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_11InetAddress16ClazzInetAddressEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_11InetAddress16ClazzInetAddressEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_11InetAddress16ClazzInetAddressEEcvRS3_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern23LiteralPatternConverter28ClazzLiteralPatternConverterEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern23LiteralPatternConverter28ClazzLiteralPatternConverterEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern23LiteralPatternConverter28ClazzLiteralPatternConverterEEcvRS4_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern19MDCPatternConverter24ClazzMDCPatternConverterEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern19MDCPatternConverter24ClazzMDCPatternConverterEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS_7pattern19MDCPatternConverter24ClazzMDCPatternConverterEEcvRS4_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_6Socket11ClazzSocketEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_6Socket11ClazzSocketEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_6Socket11ClazzSocketEEcvRS3_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_18SocketOutputStream23ClazzSocketOutputStreamEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_18SocketOutputStream23ClazzSocketOutputStreamEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_18SocketOutputStream23ClazzSocketOutputStreamEEcvRS3_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_14DatagramPacket19ClazzDatagramPacketEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_14DatagramPacket19ClazzDatagramPacketEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_14DatagramPacket19ClazzDatagramPacketEEcvRS3_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_14DatagramSocket19ClazzDatagramSocketEEC2Ev:
   40|      2|	{		
   41|      2|		new(&storage) T();
   42|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_14DatagramSocket19ClazzDatagramSocketEE5valueEv:
   62|      2|	{
   63|      2|		return *reinterpret_cast<T*>(&storage);
   64|      2|	}
_ZN7log4cxx7helpers8WideLifeINS0_14DatagramSocket19ClazzDatagramSocketEEcvRS3_Ev:
   72|      2|	{
   73|      2|		return value();
   74|      2|	}

_ZN7log4cxx5Level10LevelClassC2Ev:
   54|      2|				LevelClass() : helpers::Class() {}
_ZNK7log4cxx5Level10LevelClass7getNameEv:
   57|      2|				{
   58|      2|					return LOG4CXX_STR("Level");
  ------------------
  |  |   51|      2|		#define LOG4CXX_STR(str) str
  ------------------
   59|      2|				}

_ZN7log4cxx7pattern16PatternConverter23PatternConverterPrivateC2ERKNSt3__112basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEESB_:
   35|     77|		name(_name),
   36|     77|		style(_style) {}
_ZN7log4cxx7pattern16PatternConverter23PatternConverterPrivateD2Ev:
   38|     77|	virtual ~PatternConverterPrivate(){}

_ZN7log4cxx3spi12LocationInfo17calcShortFileNameEPKc:
   58|     74|		static constexpr const char* calcShortFileName(const char* fileName){
   59|       |#else
   60|       |		static const char* calcShortFileName(const char* fileName){
   61|       |#endif
   62|     74|			if (fileName == nullptr) return nullptr;
  ------------------
  |  Branch (62:8): [True: 0, False: 74]
  ------------------
   63|       |#if defined(_MSC_VER)
   64|       |			// As at 2024, the MSVC optimizer does not inline a function that calls another function
   65|       |			const char* location = nullptr;
   66|       |			for (auto p = fileName; *p; ++p)
   67|       |				if (*p == LOG4CXX_SHORT_FILENAME_SPLIT_CHAR)
   68|       |					location = p;
   69|       |#else
   70|     74|			const char* location = strrchr(fileName, LOG4CXX_SHORT_FILENAME_SPLIT_CHAR);
  ------------------
  |  |   28|     74|#define LOG4CXX_SHORT_FILENAME_SPLIT_CHAR '/'
  ------------------
   71|     74|#endif
   72|     74|			return location == nullptr ? fileName : location + 1;
  ------------------
  |  Branch (72:11): [True: 0, False: 74]
  ------------------
   73|     74|		}

