require '_h2ph_pre.ph';

no warnings qw(redefine misc);

unless(defined(&_BASIC_STRING_H)) {
    eval 'sub _BASIC_STRING_H () {1;}' unless defined(&_BASIC_STRING_H);
    require 'ext/atomicity.ph';
    require 'ext/alloc_traits.ph';
    require 'debug/debug.ph';
    if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201103) {
	require 'initializer_list';
    }
    if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201703) {
	require 'string_view';
    }
    if(defined(&__cpp_lib_is_constant_evaluated)) {
	eval 'sub __cpp_lib_constexpr_string () {201811;}' unless defined(&__cpp_lib_constexpr_string);
    }
 elsif((defined(&__cplusplus) ? &__cplusplus : undef) >= 201703) {
	eval 'sub __cpp_lib_constexpr_string () {201611;}' unless defined(&__cpp_lib_constexpr_string);
    }
 elsif((defined(&__cplusplus) ? &__cplusplus : undef) > 201703) {
    }
    if((defined(&_GLIBCXX_USE_CXX11_ABI) ? &_GLIBCXX_USE_CXX11_ABI : undef)) {
	if((defined(&__cplusplus) ? &__cplusplus : undef) < 201103) {
	} else {
	}
	if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201703) {
	}
	if((defined(&__cplusplus) ? &__cplusplus : undef) < 201103) {
	} else {
	}
	eval("sub _S_local_capacity () { 15/sizeof(_CharT); }") unless defined(&_S_local_capacity);
	if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201103) {
	} else {
	}
	if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201103) {
	} else {
	}
	if(defined(&_GLIBCXX_DISAMBIGUATE_REPLACE_INST)) {
	}
	if((defined(&__cpp_deduction_guides) ? &__cpp_deduction_guides : undef)  && ! defined (&_GLIBCXX_DEFINING_STRING_INSTANTIATIONS)) {
	}
	if((defined(&__cpp_deduction_guides) ? &__cpp_deduction_guides : undef)  && ! defined (&_GLIBCXX_DEFINING_STRING_INSTANTIATIONS)) {
	}
	if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201103) {
	}
	if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201103) {
	} else {
	}
	if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201703) {
	}
	if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201103) {
	}
	if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201703) {
	}
	if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201103) {
	}
	if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201103) {
	    if((defined(&__cpp_exceptions) ? &__cpp_exceptions : undef)) {
	    }
	}
	if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201103) {
	}
	if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201103) {
	}
	if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201703) {
	}
	if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201103) {
	}
	if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201103) {
	} else {
	}
	if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201703) {
	}
	if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201103) {
	}
	if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201103) {
	}
	if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201103) {
	} else {
	}
	if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201103) {
	}
	if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201703) {
	}
	if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201103) {
	} else {
	}
	if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201103) {
	} else {
	}
	if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201103) {
	    if(defined(&_GLIBCXX_DEFINING_STRING_INSTANTIATIONS)) {
	    }
	}
	if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201703) {
	}
	if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201103) {
	}
	if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201103) {
	} else {
	    if(defined(&_GLIBCXX_DISAMBIGUATE_REPLACE_INST)) {
	    } else {
	    }
	}
	if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201103) {
	}
	if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201703) {
	}
	if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201703) {
	}
	if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201703) {
	}
	if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201703) {
	}
	if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201703) {
	}
	if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201703) {
	}
	if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201703) {
	}
	if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201703) {
	}
	if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201703) {
	}
	if((defined(&__cplusplus) ? &__cplusplus : undef) > 201703) {
	}
    } else {
	if((defined(&__cplusplus) ? &__cplusplus : undef) < 201103) {
	} else {
	}
	if(defined(&__GTHREADS)) {
	} else {
	}
	if(defined(&__GTHREADS)) {
	} else {
	}
	if((defined(&_GLIBCXX_FULLY_DYNAMIC_STRING) ? &_GLIBCXX_FULLY_DYNAMIC_STRING : undef) == 0) {
	}
	if((defined(&_GLIBCXX_FULLY_DYNAMIC_STRING) ? &_GLIBCXX_FULLY_DYNAMIC_STRING : undef) == 0) {
	}
	if((defined(&_GLIBCXX_FULLY_DYNAMIC_STRING) ? &_GLIBCXX_FULLY_DYNAMIC_STRING : undef) == 0) {
	}
	if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201703) {
	}
	if((defined(&_GLIBCXX_FULLY_DYNAMIC_STRING) ? &_GLIBCXX_FULLY_DYNAMIC_STRING : undef) == 0) {
	} else {
	}
	if((defined(&__cpp_deduction_guides) ? &__cpp_deduction_guides : undef)  && ! defined (&_GLIBCXX_DEFINING_STRING_INSTANTIATIONS)) {
	}
	if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201103) {
	    if((defined(&_GLIBCXX_FULLY_DYNAMIC_STRING) ? &_GLIBCXX_FULLY_DYNAMIC_STRING : undef) == 0) {
	    }
	    if((defined(&_GLIBCXX_FULLY_DYNAMIC_STRING) ? &_GLIBCXX_FULLY_DYNAMIC_STRING : undef) == 0) {
	    } else {
	    }
	    if((defined(&_GLIBCXX_FULLY_DYNAMIC_STRING) ? &_GLIBCXX_FULLY_DYNAMIC_STRING : undef) == 0) {
	    } else {
	    }
	}
	if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201703) {
	}
	if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201103) {
	}
	if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201703) {
	}
	if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201103) {
	}
	if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201103) {
	    if((defined(&__cpp_exceptions) ? &__cpp_exceptions : undef)) {
	    }
	}
	if((defined(&_GLIBCXX_FULLY_DYNAMIC_STRING) ? &_GLIBCXX_FULLY_DYNAMIC_STRING : undef) == 0) {
	} else {
	}
	if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201103) {
	}
	if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201103) {
	}
	if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201703) {
	}
	if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201103) {
	}
	if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201703) {
	}
	if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201103) {
	}
	if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201103) {
	}
	if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201703) {
	}
	if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201103) {
	}
	if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201703) {
	}
	if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201103) {
	}
	if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201103) {
	}
	if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201703) {
	}
	if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201703) {
	}
	if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201703) {
	}
	if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201703) {
	}
	if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201703) {
	}
	if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201703) {
	}
	if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201703) {
	}
	if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201703) {
	}
	if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201703) {
	}
	if((defined(&__cplusplus) ? &__cplusplus : undef) > 201703) {
	}
	if(defined(&_GLIBCXX_TM_TS_INTERNAL)) {
	}
    }
    if((defined(&__cpp_deduction_guides) ? &__cpp_deduction_guides : undef) >= 201606) {
    }
    if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201103) {
	if((defined(&_GLIBCXX_USE_CXX11_ABI) ? &_GLIBCXX_USE_CXX11_ABI : undef)) {
	}
    }
    if((defined(&__cpp_lib_three_way_comparison) ? &__cpp_lib_three_way_comparison : undef)) {
    } else {
    }
    if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201103) {
    }
    if(defined(&_GLIBCXX_USE_WCHAR_T)) {
    }
    if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201103) {
	require 'ext/string_conversions.ph';
	require 'bits/charconv.ph';
	if((defined(&_GLIBCXX_USE_C99_STDLIB) ? &_GLIBCXX_USE_C99_STDLIB : undef)) {
	}
	if((defined(&_GLIBCXX_USE_C99_STDIO) ? &_GLIBCXX_USE_C99_STDIO : undef)) {
	}
	if(defined(&_GLIBCXX_USE_WCHAR_T)  && (defined(&_GLIBCXX_USE_C99_WCHAR) ? &_GLIBCXX_USE_C99_WCHAR : undef)) {
	    unless(defined(&_GLIBCXX_HAVE_BROKEN_VSWPRINTF)) {
	    }
	}
    }
    if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201103) {
	require 'bits/functional_hash.ph';
	unless(defined(&_GLIBCXX_COMPATIBILITY_CXX0X)) {
	    if(defined(&_GLIBCXX_USE_WCHAR_T)) {
	    }
	}
	if(defined(&_GLIBCXX_USE_CHAR8_T)) {
	}
	if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201402) {
	    eval 'sub __cpp_lib_string_udls () {201304;}' unless defined(&__cpp_lib_string_udls);
	    if(defined(&_GLIBCXX_USE_WCHAR_T)) {
	    }
	    if(defined(&_GLIBCXX_USE_CHAR8_T)) {
	    }
	    if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201703) {
	    }
	}
    }
}
1;
