<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <ItemGroup Label="ProjectConfigurations">
    <ProjectConfiguration Include="Debug|Win32">
      <Configuration>Debug</Configuration>
      <Platform>Win32</Platform>
    </ProjectConfiguration>
    <ProjectConfiguration Include="Debug|x64">
      <Configuration>Debug</Configuration>
      <Platform>x64</Platform>
    </ProjectConfiguration>
    <ProjectConfiguration Include="Release|Win32">
      <Configuration>Release</Configuration>
      <Platform>Win32</Platform>
    </ProjectConfiguration>
    <ProjectConfiguration Include="Release|x64">
      <Configuration>Release</Configuration>
      <Platform>x64</Platform>
    </ProjectConfiguration>
  </ItemGroup>
  <PropertyGroup Label="Globals">
    <ProjectGuid>{D21C6A0F-BED1-3377-9659-7FC7D82EFC4F}</ProjectGuid>
    <ProjectName>tdutils</ProjectName>
  </PropertyGroup>
  <PropertyGroup Label="Configuration">
    <PlatformToolset>v141_xp</PlatformToolset>
  </PropertyGroup>
  <Import Project="..\..\..\build\vc.common\slib.props" />
  <PropertyGroup>
    <OutDir Condition="'$(Platform)'=='Win32'">$(ProjectDir)lib\$(Configuration)32\</OutDir>
    <OutDir Condition="'$(Platform)'=='x64'">$(ProjectDir)lib\$(Configuration)64\</OutDir>
  </PropertyGroup>
  <ItemDefinitionGroup>
    <ClCompile>
      <AdditionalIncludeDirectories>.\td\tdutils;..\..\..\include;..\..\..\libs\zlib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
      <AdditionalOptions>%(AdditionalOptions) /bigobj</AdditionalOptions>
      <DisableSpecificWarnings>4100;4127;4324;4505;4702</DisableSpecificWarnings>
      <PrecompiledHeader>NotUsing</PrecompiledHeader>
      <BufferSecurityCheck Condition="'$(Configuration)'=='Release'">false</BufferSecurityCheck>
      <ControlFlowGuard Condition="'$(Configuration)'=='Release'">false</ControlFlowGuard>
      <FunctionLevelLinking Condition="'$(Configuration)'=='Release'">true</FunctionLevelLinking>
      <EnableParallelCodeGeneration Condition="'$(Configuration)'=='Release'">true</EnableParallelCodeGeneration>
    </ClCompile>
  </ItemDefinitionGroup>
  <ItemGroup>
    <ClCompile Include="td\tdutils\td\utils\AsyncFileLog.cpp" />
    <ClCompile Include="td\tdutils\td\utils\BufferedUdp.cpp" />
    <ClCompile Include="td\tdutils\td\utils\check.cpp" />
    <ClCompile Include="td\tdutils\td\utils\emoji.cpp" />
    <ClCompile Include="td\tdutils\td\utils\ExitGuard.cpp" />
    <ClCompile Include="td\tdutils\td\utils\FlatHashTable.cpp" />
    <ClCompile Include="td\tdutils\td\utils\FloodControlGlobal.cpp" />
    <ClCompile Include="td\tdutils\td\utils\MpmcQueue.cpp" />
    <ClCompile Include="td\tdutils\td\utils\OptionParser.cpp" />
    <ClCompile Include="td\tdutils\td\utils\PathView.cpp" />
    <ClCompile Include="td\tdutils\td\utils\port\Clocks.cpp" />
    <ClCompile Include="td\tdutils\td\utils\port\detail\Iocp.cpp" />
    <ClCompile Include="td\tdutils\td\utils\port\detail\NativeFd.cpp" />
    <ClCompile Include="td\tdutils\td\utils\port\FileFd.cpp" />
    <ClCompile Include="td\tdutils\td\utils\port\IPAddress.cpp" />
    <ClCompile Include="td\tdutils\td\utils\port\MemoryMapping.cpp" />
    <ClCompile Include="td\tdutils\td\utils\port\path.cpp" />
    <ClCompile Include="td\tdutils\td\utils\port\platform.cpp" />
    <ClCompile Include="td\tdutils\td\utils\port\PollFlags.cpp" />
    <ClCompile Include="td\tdutils\td\utils\port\rlimit.cpp" />
    <ClCompile Include="td\tdutils\td\utils\port\ServerSocketFd.cpp" />
    <ClCompile Include="td\tdutils\td\utils\port\signals.cpp" />
    <ClCompile Include="td\tdutils\td\utils\port\sleep.cpp" />
    <ClCompile Include="td\tdutils\td\utils\port\SocketFd.cpp" />
    <ClCompile Include="td\tdutils\td\utils\port\stacktrace.cpp" />
    <ClCompile Include="td\tdutils\td\utils\port\Stat.cpp" />
    <ClCompile Include="td\tdutils\td\utils\port\StdStreams.cpp" />
    <ClCompile Include="td\tdutils\td\utils\port\thread_local.cpp" />
    <ClCompile Include="td\tdutils\td\utils\port\UdpSocketFd.cpp" />
    <ClCompile Include="td\tdutils\td\utils\port\uname.cpp" />
    <ClCompile Include="td\tdutils\td\utils\port\user.cpp" />
    <ClCompile Include="td\tdutils\td\utils\port\wstring_convert.cpp" />
    <ClCompile Include="td\tdutils\td\utils\port\detail\Epoll.cpp" />
    <ClCompile Include="td\tdutils\td\utils\port\detail\EventFdBsd.cpp" />
    <ClCompile Include="td\tdutils\td\utils\port\detail\EventFdLinux.cpp" />
    <ClCompile Include="td\tdutils\td\utils\port\detail\EventFdWindows.cpp" />
    <ClCompile Include="td\tdutils\td\utils\port\detail\KQueue.cpp" />
    <ClCompile Include="td\tdutils\td\utils\port\detail\Poll.cpp" />
    <ClCompile Include="td\tdutils\td\utils\port\detail\Select.cpp" />
    <ClCompile Include="td\tdutils\td\utils\port\detail\ThreadIdGuard.cpp" />
    <ClCompile Include="td\tdutils\td\utils\port\detail\WineventPoll.cpp" />
    <ClCompile Include="td\tdutils\generate\auto\mime_type_to_extension.cpp" />
    <ClCompile Include="td\tdutils\generate\auto\extension_to_mime_type.cpp" />
    <ClCompile Include="td\tdutils\td\utils\base64.cpp" />
    <ClCompile Include="td\tdutils\td\utils\BigNum.cpp" />
    <ClCompile Include="td\tdutils\td\utils\buffer.cpp" />
    <ClCompile Include="td\tdutils\td\utils\crypto.cpp" />
    <ClCompile Include="td\tdutils\td\utils\FileLog.cpp" />
    <ClCompile Include="td\tdutils\td\utils\filesystem.cpp" />
    <ClCompile Include="td\tdutils\td\utils\find_boundary.cpp" />
    <ClCompile Include="td\tdutils\td\utils\Gzip.cpp" />
    <ClCompile Include="td\tdutils\td\utils\GzipByteFlow.cpp" />
    <ClCompile Include="td\tdutils\td\utils\Hints.cpp" />
    <ClCompile Include="td\tdutils\td\utils\HttpUrl.cpp" />
    <ClCompile Include="td\tdutils\td\utils\JsonBuilder.cpp" />
    <ClCompile Include="td\tdutils\td\utils\logging.cpp" />
    <ClCompile Include="td\tdutils\td\utils\misc.cpp" />
    <ClCompile Include="td\tdutils\td\utils\MimeType.cpp" />
    <ClCompile Include="td\tdutils\td\utils\Random.cpp" />
    <ClCompile Include="td\tdutils\td\utils\SharedSlice.cpp" />
    <ClCompile Include="td\tdutils\td\utils\Slice.cpp" />
    <ClCompile Include="td\tdutils\td\utils\StackAllocator.cpp" />
    <ClCompile Include="td\tdutils\td\utils\Status.cpp" />
    <ClCompile Include="td\tdutils\td\utils\StringBuilder.cpp" />
    <ClCompile Include="td\tdutils\td\utils\tests.cpp" />
    <ClCompile Include="td\tdutils\td\utils\Time.cpp" />
    <ClCompile Include="td\tdutils\td\utils\Timer.cpp" />
    <ClCompile Include="td\tdutils\td\utils\tl_parsers.cpp" />
    <ClCompile Include="td\tdutils\td\utils\translit.cpp" />
    <ClCompile Include="td\tdutils\td\utils\TsCerr.cpp" />
    <ClCompile Include="td\tdutils\td\utils\TsFileLog.cpp" />
    <ClCompile Include="td\tdutils\td\utils\TsLog.cpp" />
    <ClCompile Include="td\tdutils\td\utils\unicode.cpp" />
    <ClCompile Include="td\tdutils\td\utils\utf8.cpp" />
    <ClInclude Include="td\tdutils\td\utils\algorithm.h" />
    <ClInclude Include="td\tdutils\td\utils\as.h" />
    <ClInclude Include="td\tdutils\td\utils\AsyncFileLog.h" />
    <ClInclude Include="td\tdutils\td\utils\AtomicRead.h" />
    <ClInclude Include="td\tdutils\td\utils\bits.h" />
    <ClInclude Include="td\tdutils\td\utils\BufferedUdp.h" />
    <ClInclude Include="td\tdutils\td\utils\CancellationToken.h" />
    <ClInclude Include="td\tdutils\td\utils\ChainScheduler.h" />
    <ClInclude Include="td\tdutils\td\utils\check.h" />
    <ClInclude Include="td\tdutils\td\utils\CombinedLog.h" />
    <ClInclude Include="td\tdutils\td\utils\ConcurrentHashTable.h" />
    <ClInclude Include="td\tdutils\td\utils\config.h" />
    <ClInclude Include="td\tdutils\td\utils\Context.h" />
    <ClInclude Include="td\tdutils\td\utils\DecTree.h" />
    <ClInclude Include="td\tdutils\td\utils\Destructor.h" />
    <ClInclude Include="td\tdutils\td\utils\emoji.h" />
    <ClInclude Include="td\tdutils\td\utils\EpochBasedMemoryReclamation.h" />
    <ClInclude Include="td\tdutils\td\utils\ExitGuard.h" />
    <ClInclude Include="td\tdutils\td\utils\fixed_vector.h" />
    <ClInclude Include="td\tdutils\td\utils\FlatHashMap.h" />
    <ClInclude Include="td\tdutils\td\utils\FlatHashMapChunks.h" />
    <ClInclude Include="td\tdutils\td\utils\FlatHashSet.h" />
    <ClInclude Include="td\tdutils\td\utils\FlatHashTable.h" />
    <ClInclude Include="td\tdutils\td\utils\FloodControlGlobal.h" />
    <ClInclude Include="td\tdutils\td\utils\Hash.h" />
    <ClInclude Include="td\tdutils\td\utils\HashMap.h" />
    <ClInclude Include="td\tdutils\td\utils\HashSet.h" />
    <ClInclude Include="td\tdutils\td\utils\HashTableUtils.h" />
    <ClInclude Include="td\tdutils\td\utils\MapNode.h" />
    <ClInclude Include="td\tdutils\td\utils\NullLog.h" />
    <ClInclude Include="td\tdutils\td\utils\OptionParser.h" />
    <ClInclude Include="td\tdutils\td\utils\port\Clocks.h" />
    <ClInclude Include="td\tdutils\td\utils\port\config.h" />
    <ClInclude Include="td\tdutils\td\utils\port\CxCli.h" />
    <ClInclude Include="td\tdutils\td\utils\port\detail\Iocp.h" />
    <ClInclude Include="td\tdutils\td\utils\port\detail\NativeFd.h" />
    <ClInclude Include="td\tdutils\td\utils\port\detail\PollableFd.h" />
    <ClInclude Include="td\tdutils\td\utils\port\detail\skip_eintr.h" />
    <ClInclude Include="td\tdutils\td\utils\port\EventFd.h" />
    <ClInclude Include="td\tdutils\td\utils\port\EventFdBase.h" />
    <ClInclude Include="td\tdutils\td\utils\port\FileFd.h" />
    <ClInclude Include="td\tdutils\td\utils\port\FromApp.h" />
    <ClInclude Include="td\tdutils\td\utils\port\IoSlice.h" />
    <ClInclude Include="td\tdutils\td\utils\port\IPAddress.h" />
    <ClInclude Include="td\tdutils\td\utils\port\MemoryMapping.h" />
    <ClInclude Include="td\tdutils\td\utils\port\Mutex.h" />
    <ClInclude Include="td\tdutils\td\utils\port\path.h" />
    <ClInclude Include="td\tdutils\td\utils\port\platform.h" />
    <ClInclude Include="td\tdutils\td\utils\port\Poll.h" />
    <ClInclude Include="td\tdutils\td\utils\port\PollBase.h" />
    <ClInclude Include="td\tdutils\td\utils\port\PollFlags.h" />
    <ClInclude Include="td\tdutils\td\utils\port\rlimit.h" />
    <ClInclude Include="td\tdutils\td\utils\port\ServerSocketFd.h" />
    <ClInclude Include="td\tdutils\td\utils\port\signals.h" />
    <ClInclude Include="td\tdutils\td\utils\port\sleep.h" />
    <ClInclude Include="td\tdutils\td\utils\port\SocketFd.h" />
    <ClInclude Include="td\tdutils\td\utils\port\stacktrace.h" />
    <ClInclude Include="td\tdutils\td\utils\port\Stat.h" />
    <ClInclude Include="td\tdutils\td\utils\port\StdStreams.h" />
    <ClInclude Include="td\tdutils\td\utils\port\thread.h" />
    <ClInclude Include="td\tdutils\td\utils\port\thread_local.h" />
    <ClInclude Include="td\tdutils\td\utils\port\UdpSocketFd.h" />
    <ClInclude Include="td\tdutils\td\utils\port\uname.h" />
    <ClInclude Include="td\tdutils\td\utils\port\user.h" />
    <ClInclude Include="td\tdutils\td\utils\port\wstring_convert.h" />
    <ClInclude Include="td\tdutils\td\utils\port\detail\Epoll.h" />
    <ClInclude Include="td\tdutils\td\utils\port\detail\EventFdBsd.h" />
    <ClInclude Include="td\tdutils\td\utils\port\detail\EventFdLinux.h" />
    <ClInclude Include="td\tdutils\td\utils\port\detail\EventFdWindows.h" />
    <ClInclude Include="td\tdutils\td\utils\port\detail\KQueue.h" />
    <ClInclude Include="td\tdutils\td\utils\port\detail\Poll.h" />
    <ClInclude Include="td\tdutils\td\utils\port\detail\Select.h" />
    <ClInclude Include="td\tdutils\td\utils\port\detail\ThreadIdGuard.h" />
    <ClInclude Include="td\tdutils\td\utils\port\detail\ThreadStl.h" />
    <ClInclude Include="td\tdutils\td\utils\port\detail\WineventPoll.h" />
    <ClInclude Include="td\tdutils\td\utils\AesCtrByteFlow.h" />
    <ClInclude Include="td\tdutils\td\utils\base64.h" />
    <ClInclude Include="td\tdutils\td\utils\benchmark.h" />
    <ClInclude Include="td\tdutils\td\utils\BigNum.h" />
    <ClInclude Include="td\tdutils\td\utils\buffer.h" />
    <ClInclude Include="td\tdutils\td\utils\BufferedFd.h" />
    <ClInclude Include="td\tdutils\td\utils\BufferedReader.h" />
    <ClInclude Include="td\tdutils\td\utils\ByteFlow.h" />
    <ClInclude Include="td\tdutils\td\utils\ChangesProcessor.h" />
    <ClInclude Include="td\tdutils\td\utils\Closure.h" />
    <ClInclude Include="td\tdutils\td\utils\common.h" />
    <ClInclude Include="td\tdutils\td\utils\Container.h" />
    <ClInclude Include="td\tdutils\td\utils\crypto.h" />
    <ClInclude Include="td\tdutils\td\utils\Enumerator.h" />
    <ClInclude Include="td\tdutils\td\utils\FileLog.h" />
    <ClInclude Include="td\tdutils\td\utils\filesystem.h" />
    <ClInclude Include="td\tdutils\td\utils\find_boundary.h" />
    <ClInclude Include="td\tdutils\td\utils\FloodControlFast.h" />
    <ClInclude Include="td\tdutils\td\utils\FloodControlStrict.h" />
    <ClInclude Include="td\tdutils\td\utils\format.h" />
    <ClInclude Include="td\tdutils\td\utils\Gzip.h" />
    <ClInclude Include="td\tdutils\td\utils\GzipByteFlow.h" />
    <ClInclude Include="td\tdutils\td\utils\HazardPointers.h" />
    <ClInclude Include="td\tdutils\td\utils\Heap.h" />
    <ClInclude Include="td\tdutils\td\utils\Hints.h" />
    <ClInclude Include="td\tdutils\td\utils\HttpUrl.h" />
    <ClInclude Include="td\tdutils\td\utils\int_types.h" />
    <ClInclude Include="td\tdutils\td\utils\invoke.h" />
    <ClInclude Include="td\tdutils\td\utils\JsonBuilder.h" />
    <ClInclude Include="td\tdutils\td\utils\List.h" />
    <ClInclude Include="td\tdutils\td\utils\logging.h" />
    <ClInclude Include="td\tdutils\td\utils\MemoryLog.h" />
    <ClInclude Include="td\tdutils\td\utils\MimeType.h" />
    <ClInclude Include="td\tdutils\td\utils\misc.h" />
    <ClInclude Include="td\tdutils\td\utils\MovableValue.h" />
    <ClInclude Include="td\tdutils\td\utils\MpmcQueue.h" />
    <ClInclude Include="td\tdutils\td\utils\MpmcWaiter.h" />
    <ClInclude Include="td\tdutils\td\utils\MpscPollableQueue.h" />
    <ClInclude Include="td\tdutils\td\utils\MpscLinkQueue.h" />
    <ClInclude Include="td\tdutils\td\utils\Named.h" />
    <ClInclude Include="td\tdutils\td\utils\ObjectPool.h" />
    <ClInclude Include="td\tdutils\td\utils\Observer.h" />
    <ClInclude Include="td\tdutils\td\utils\optional.h" />
    <ClInclude Include="td\tdutils\td\utils\OptionsParser.h" />
    <ClInclude Include="td\tdutils\td\utils\OrderedEventsProcessor.h" />
    <ClInclude Include="td\tdutils\td\utils\overloaded.h" />
    <ClInclude Include="td\tdutils\td\utils\Parser.h" />
    <ClInclude Include="td\tdutils\td\utils\PathView.h" />
    <ClInclude Include="td\tdutils\td\utils\Promise.h" />
    <ClInclude Include="td\tdutils\td\utils\queue.h" />
    <ClInclude Include="td\tdutils\td\utils\Random.h" />
    <ClInclude Include="td\tdutils\td\utils\ScopeGuard.h" />
    <ClInclude Include="td\tdutils\td\utils\SetNode.h" />
    <ClInclude Include="td\tdutils\td\utils\SharedObjectPool.h" />
    <ClInclude Include="td\tdutils\td\utils\SharedSlice.h" />
    <ClInclude Include="td\tdutils\td\utils\Slice-decl.h" />
    <ClInclude Include="td\tdutils\td\utils\Slice.h" />
    <ClInclude Include="td\tdutils\td\utils\SliceBuilder.h" />
    <ClInclude Include="td\tdutils\td\utils\Span.h" />
    <ClInclude Include="td\tdutils\td\utils\SpinLock.h" />
    <ClInclude Include="td\tdutils\td\utils\StackAllocator.h" />
    <ClInclude Include="td\tdutils\td\utils\Status.h" />
    <ClInclude Include="td\tdutils\td\utils\StealingQueue.h" />
    <ClInclude Include="td\tdutils\td\utils\Storer.h" />
    <ClInclude Include="td\tdutils\td\utils\StorerBase.h" />
    <ClInclude Include="td\tdutils\td\utils\StringBuilder.h" />
    <ClInclude Include="td\tdutils\td\utils\tests.h" />
    <ClInclude Include="td\tdutils\td\utils\ThreadLocalStorage.h" />
    <ClInclude Include="td\tdutils\td\utils\ThreadSafeCounter.h" />
    <ClInclude Include="td\tdutils\td\utils\Time.h" />
    <ClInclude Include="td\tdutils\td\utils\TimedStat.h" />
    <ClInclude Include="td\tdutils\td\utils\Timer.h" />
    <ClInclude Include="td\tdutils\td\utils\TlDowncastHelper.h" />
    <ClInclude Include="td\tdutils\td\utils\TlStorerToString.h" />
    <ClInclude Include="td\tdutils\td\utils\tl_helpers.h" />
    <ClInclude Include="td\tdutils\td\utils\tl_parsers.h" />
    <ClInclude Include="td\tdutils\td\utils\tl_storers.h" />
    <ClInclude Include="td\tdutils\td\utils\translit.h" />
    <ClInclude Include="td\tdutils\td\utils\TsCerr.h" />
    <ClInclude Include="td\tdutils\td\utils\TsFileLog.h" />
    <ClInclude Include="td\tdutils\td\utils\TsList.h" />
    <ClInclude Include="td\tdutils\td\utils\TsLog.h" />
    <ClInclude Include="td\tdutils\td\utils\type_traits.h" />
    <ClInclude Include="td\tdutils\td\utils\UInt.h" />
    <ClInclude Include="td\tdutils\td\utils\uint128.h" />
    <ClInclude Include="td\tdutils\td\utils\unicode.h" />
    <ClInclude Include="td\tdutils\td\utils\unique_ptr.h" />
    <ClInclude Include="td\tdutils\td\utils\unique_value_ptr.h" />
    <ClInclude Include="td\tdutils\td\utils\utf8.h" />
    <ClInclude Include="td\tdutils\td\utils\Variant.h" />
    <ClInclude Include="td\tdutils\td\utils\VectorQueue.h" />
    <ClInclude Include="td\tdutils\td\utils\WaitFreeHashMap.h" />
    <ClInclude Include="td\tdutils\td\utils\WaitFreeHashSet.h" />
    <ClInclude Include="td\tdutils\td\utils\WaitFreeVector.h" />
  </ItemGroup>
  <ItemGroup>
    <None Include="td\tdutils\td\utils\config.h.in" />
  </ItemGroup>
  <ImportGroup Label="ExtensionTargets">
  </ImportGroup>
</Project>