# Comment blocks of the emscripten files compiled into this engine build, verbatim.
# Each block is quoted exactly from the named source (an asset A member, or a file of the hosted
# run's evidence) at the named lines; its sha256 is of the quoted bytes. "also in" names further
# locations whose block has the same text after whitespace normalisation. See METHOD.md.
# This is a notice inventory, not legal advice.

==== emscripten-source/system/include/GL/gl.h lines 1-24 sha256 197fcb71e8e0c889925f95247c93aa23ce162b3e457c73baffd4f6b30ed78219 ====
/*
 * Mesa 3-D graphics library
 * Version:  7.6
 *
 * Copyright (C) 1999-2006  Brian Paul   All Rights Reserved.
 * Copyright (C) 2009  VMware, Inc.  All Rights Reserved.
 *
 * Permission is hereby granted, free of charge, to any person obtaining a
 * copy of this software and associated documentation files (the "Software"),
 * to deal in the Software without restriction, including without limitation
 * the rights to use, copy, modify, merge, publish, distribute, sublicense,
 * and/or sell copies of the Software, and to permit persons to whom the
 * Software is furnished to do so, subject to the following conditions:
 *
 * The above copyright notice and this permission notice shall be included
 * in all copies or substantial portions of the Software.
 *
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
 * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
 * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
 * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
 * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 */

==== emscripten-source/system/include/GL/glew.h lines 1-13 sha256 0df27ead127b427983aa58bebbd053024a1e4a66a5f5062251b5ac65a34e56f4 ====
/* GLEW 1.10.0 emulation include header
 * this include file provides neccessary stuff to function with most GLEW programs.
 * library_glew.js is also provided to support extensions and error strings
 *
 * This file is based on GLEW (1.10.0) and linaro fork generated include files.
 *
 * What it lacks:
 * - Some constants and function declarations that are in GLEW 1.10.0 might be missing.
 * - The real glew-es fork also includes normal GL constants and function pointers, this does not.
 *
 * Authors:
 * - Jari Vetoniemi <mailroxas@gmail.com>
 */

==== emscripten-source/system/include/GL/glext.h lines 8-29 sha256 e20c2db28d16f7330ef5b0bc605660e9afd3a8c7833781842480a56d556fdd6e ====
also in: emscripten-source/system/include/GLES/gl.h:8-29, emscripten-source/system/include/GLES/glext.h:8-29, emscripten-source/system/include/GLES2/gl2.h:8-29, emscripten-source/system/include/GLES2/gl2ext.h:8-29
/*
** Copyright (c) 2013-2018 The Khronos Group Inc.
**
** Permission is hereby granted, free of charge, to any person obtaining a
** copy of this software and/or associated documentation files (the
** "Materials"), to deal in the Materials without restriction, including
** without limitation the rights to use, copy, modify, merge, publish,
** distribute, sublicense, and/or sell copies of the Materials, and to
** permit persons to whom the Materials are furnished to do so, subject to
** the following conditions:
**
** The above copyright notice and this permission notice shall be included
** in all copies or substantial portions of the Materials.
**
** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
*/

==== emscripten-source/system/include/GL/glu.h lines 1-29 sha256 4a1a95564aca1c1bcca5338b2c3cf6437778f795c2731a60e904552dfbb96a96 ====
/*
 * SGI FREE SOFTWARE LICENSE B (Version 2.0, Sept. 18, 2008)
 * Copyright (C) 1991-2000 Silicon Graphics, Inc. All Rights Reserved.
 *
 * Permission is hereby granted, free of charge, to any person obtaining a
 * copy of this software and associated documentation files (the "Software"),
 * to deal in the Software without restriction, including without limitation
 * the rights to use, copy, modify, merge, publish, distribute, sublicense,
 * and/or sell copies of the Software, and to permit persons to whom the
 * Software is furnished to do so, subject to the following conditions:
 *
 * The above copyright notice including the dates of first publication and
 * either this permission notice or a reference to
 * http://oss.sgi.com/projects/FreeB/
 * shall be included in all copies or substantial portions of the Software.
 *
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
 * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
 * SILICON GRAPHICS, INC. BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
 * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF
 * OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
 * SOFTWARE.
 *
 * Except as contained in this notice, the name of Silicon Graphics, Inc.
 * shall not be used in advertising or otherwise to promote the sale, use or
 * other dealings in this Software without prior written authorization from
 * Silicon Graphics, Inc.
 */

==== emscripten-source/system/include/GLES/glplatform.h lines 4-18 sha256 9c3b2744885b618d83ee73377947ee1545f53c5483e41183c279bda8f1af12d7 ====
also in: emscripten-source/system/include/GLES2/gl2platform.h:4-18
/*
** Copyright (c) 2017 The Khronos Group Inc.
**
** Licensed under the Apache License, Version 2.0 (the "License");
** you may not use this file except in compliance with the License.
** You may obtain a copy of the License at
**
**     http://www.apache.org/licenses/LICENSE-2.0
**
** Unless required by applicable law or agreed to in writing, software
** distributed under the License is distributed on an "AS IS" BASIS,
** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
** See the License for the specific language governing permissions and
** limitations under the License.
*/

==== emscripten-source/system/include/KHR/khrplatform.h lines 4-25 sha256 438187dca092de4032c1a16524aa4c34c71a0f985a71251a675aad54e77ed561 ====
/*
** Copyright (c) 2008-2018 The Khronos Group Inc.
**
** Permission is hereby granted, free of charge, to any person obtaining a
** copy of this software and/or associated documentation files (the
** "Materials"), to deal in the Materials without restriction, including
** without limitation the rights to use, copy, modify, merge, publish,
** distribute, sublicense, and/or sell copies of the Materials, and to
** permit persons to whom the Materials are furnished to do so, subject to
** the following conditions:
**
** The above copyright notice and this permission notice shall be included
** in all copies or substantial portions of the Materials.
**
** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
*/

==== emscripten-source/system/include/SDL/SDL_config.h lines 1-20 sha256 78a79ebcbe99ee5726bdd26de8b58e806932cd9760204f2d747376a4696277d5 ====
also in: emscripten-source/system/include/SDL/SDL_config_android.h:1-20, emscripten-source/system/include/SDL/SDL_config_iphoneos.h:1-20, emscripten-source/system/include/SDL/SDL_config_macosx.h:1-20, emscripten-source/system/include/SDL/SDL_config_minimal.h:1-20, emscripten-source/system/include/SDL/SDL_config_nintendods.h:1-20, emscripten-source/system/include/SDL/SDL_config_windows.h:1-20, emscripten-source/system/include/SDL/SDL_opengl.h:1-20, emscripten-source/system/include/SDL/SDL_opengles.h:1-20, emscripten-source/system/include/SDL/SDL_opengles2.h:1-20, emscripten-source/system/include/SDL/SDL_platform.h:1-20, emscripten-source/system/include/SDL/begin_code.h:1-20, emscripten-source/system/include/SDL/close_code.h:1-20
/*
  Simple DirectMedia Layer
  Copyright (C) 1997-2011 Sam Lantinga <slouken@libsdl.org>

  This software is provided 'as-is', without any express or implied
  warranty.  In no event will the authors be held liable for any damages
  arising from the use of this software.

  Permission is granted to anyone to use this software for any purpose,
  including commercial applications, and to alter it and redistribute it
  freely, subject to the following restrictions:

  1. The origin of this software must not be misrepresented; you must not
     claim that you wrote the original software. If you use this software
     in a product, an acknowledgment in the product documentation would be
     appreciated but is not required.
  2. Altered source versions must be plainly marked as such, and must not be
     misrepresented as being the original software.
  3. This notice may not be removed or altered from any source distribution.
*/

==== emscripten-source/system/include/SDL/SDL_opengl.h lines 22-26 sha256 ebec7332ce06fe29c0f3c4826fb417e4a62e1034c79a3346f5a19ec8dc1172f1 ====
/**
 *  \file SDL_opengl.h
 *  
 *  This is a simple file to encapsulate the OpenGL API headers.
 */

==== emscripten-source/system/include/SDL/SDL_opengl.h lines 86-107 sha256 d3f9c1c6c3144d530756c7a829dbc2a7fe35cf8ba3dfc6b9a427c884b4199918 ====
/*
** Copyright (c) 2007-2010 The Khronos Group Inc.
** 
** Permission is hereby granted, free of charge, to any person obtaining a
** copy of this software and/or associated documentation files (the
** "Materials"), to deal in the Materials without restriction, including
** without limitation the rights to use, copy, modify, merge, publish,
** distribute, sublicense, and/or sell copies of the Materials, and to
** permit persons to whom the Materials are furnished to do so, subject to
** the following conditions:
** 
** The above copyright notice and this permission notice shall be included
** in all copies or substantial portions of the Materials.
** 
** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
*/

==== emscripten-source/system/include/SDL/SDL_opengles.h lines 22-26 sha256 edd600f2adedd39151c2885e9803505ea250cffafaf8667619c7f3fa938c440c ====
/**
 *  \file SDL_opengles.h
 *  
 *  This is a simple file to encapsulate the OpenGL ES 1.X API headers.
 */

==== emscripten-source/system/include/SDL/SDL_opengles2.h lines 22-26 sha256 837aba99db3b11011be4b2ec1c050a83c01b3b54c27f6f6828692723521f7d63 ====
/**
 *  \file SDL_opengles.h
 *  
 *  This is a simple file to encapsulate the OpenGL ES 2.0 API headers.
 */

==== emscripten-source/system/include/SDL/SDL_platform.h lines 22-26 sha256 a1e78be80f0b1e4d29b04cd1a61ee85f98404c3740394678a3b3b8b35e6029d5 ====
/**
 *  \file SDL_platform.h
 *  
 *  Try to get a standard set of platform defines.
 */

==== emscripten-source/system/include/SDL/begin_code.h lines 22-28 sha256 7796176f117afb4fd3313d7036381133b10c7c889c8da42a287fd5c3e764eb7b ====
/**
 *  \file begin_code.h
 *
 *  This file sets things up for C dynamic library function definitions,
 *  static inlined functions, and structures aligned at 4-byte alignment.
 *  If you don't like ugly C preprocessor code, don't look at this file. :)
 */

==== emscripten-source/system/include/SDL/begin_code.h lines 30-30 sha256 eed83058d0ec5c2f86d907cf83b10323062dce39f334b60b0780d3ef3bc77df8 ====
/* This shouldn't be nested -- included it around code only. */

==== emscripten-source/system/include/SDL/close_code.h lines 22-27 sha256 0cc5966f83c1aa399f5fd995c4212bdae812f78418e7906e27e96034cbc00289 ====
/**
 *  \file close_code.h
 *  
 *  This file reverses the effects of begin_code.h and should be included
 *  after you finish any function and structure declarations in your headers
 */

==== emscripten-source/system/include/X11/X.h lines 1-1 sha256 406816bc38db5587fdcebc388a8d7f244565f149394585decbec06324c8a2b2e ====
/* Definitions for the X window system likely to be used by applications */

==== emscripten-source/system/include/X11/X.h lines 6-51 sha256 4beeb94f9530a4e30dcd37d6277a5d3824c140d090323c82c9ccd5e5d9e72a7c ====
also in: emscripten-source/system/include/X11/Xmd.h:1-46, emscripten-source/system/include/X11/Xutil.h:2-47, emscripten-source/system/include/X11/keysym.h:1-46
/***********************************************************

Copyright 1987, 1998  The Open Group

Permission to use, copy, modify, distribute, and sell this software and its
documentation for any purpose is hereby granted without fee, provided that
the above copyright notice appear in all copies and that both that
copyright notice and this permission notice appear in supporting
documentation.

The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Except as contained in this notice, the name of The Open Group shall not be
used in advertising or otherwise to promote the sale, use or other dealings
in this Software without prior written authorization from The Open Group.


Copyright 1987 by Digital Equipment Corporation, Maynard, Massachusetts.

                        All Rights Reserved

Permission to use, copy, modify, and distribute this software and its 
documentation for any purpose and without fee is hereby granted, 
provided that the above copyright notice appear in all copies and that
both that copyright notice and this permission notice appear in 
supporting documentation, and that the name of Digital not be
used in advertising or publicity pertaining to distribution of the
software without specific, written prior permission.  

DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR
ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
SOFTWARE.

******************************************************************/

==== emscripten-source/system/include/X11/Xfuncproto.h lines 1-1 sha256 b8baec51ad7ada477a5f60bbf7ac2e9021a11e80ad40b8b17ffc441412ac84b0 ====
/* Xfuncproto.h.  Generated from Xfuncproto.h.in by configure.  */

==== emscripten-source/system/include/X11/Xfuncproto.h lines 2-26 sha256 57ea9eb82eae3864f27b80618047f8926eafb5f87b7f4ea6fd2068fb8ca1809f ====
/*
 *
Copyright 1989, 1991, 1998  The Open Group

Permission to use, copy, modify, distribute, and sell this software and its
documentation for any purpose is hereby granted without fee, provided that
the above copyright notice appear in all copies and that both that
copyright notice and this permission notice appear in supporting
documentation.

The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Except as contained in this notice, the name of The Open Group shall not be
used in advertising or otherwise to promote the sale, use or other dealings
in this Software without prior written authorization from The Open Group.
 *
 */

==== emscripten-source/system/include/X11/Xfuncproto.h lines 28-28 sha256 0f5013783cc8d39510383f54c1caa158ec88e57017eb428676a70e680fe93f98 ====
/* Definitions to make function prototypes manageable */

==== emscripten-source/system/include/X11/Xlib.h lines 1-25 sha256 faf420c42dbafe735c38d9c4ea100918dbb26bb56aab94589913f1f1306b2c4a ====
/*

Copyright 1985, 1986, 1987, 1991, 1998  The Open Group

Permission to use, copy, modify, distribute, and sell this software and its
documentation for any purpose is hereby granted without fee, provided that
the above copyright notice appear in all copies and that both that
copyright notice and this permission notice appear in supporting
documentation.

The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Except as contained in this notice, the name of The Open Group shall not be
used in advertising or otherwise to promote the sale, use or other dealings
in this Software without prior written authorization from The Open Group.

*/

==== emscripten-source/system/include/X11/Xlib.h lines 28-32 sha256 54741fed5026ce245d8edd1f15c110e1afe1b83d5be883ce050f1c1d76bf92db ====
/*
 *	Xlib.h - Header definition and support file for the C subroutine
 *	interface library (Xlib) to the X Window System Protocol (V11).
 *	Structures and symbols starting with "_" are private to the library.
 */

==== emscripten-source/system/include/X11/Xosdefs.h lines 1-25 sha256 4836402de5d842fa1f294331b9afbfc8289c598b9859e8d29f8e2f008076e97c ====
/*
 * O/S-dependent (mis)feature macro definitions
 *
Copyright 1991, 1998  The Open Group

Permission to use, copy, modify, distribute, and sell this software and its
documentation for any purpose is hereby granted without fee, provided that
the above copyright notice appear in all copies and that both that
copyright notice and this permission notice appear in supporting
documentation.

The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Except as contained in this notice, the name of The Open Group shall not be
used in advertising or otherwise to promote the sale, use or other dealings
in this Software without prior written authorization from The Open Group.
 */

==== emscripten-source/system/include/X11/keysym.h lines 48-48 sha256 c33cce6e993c7ca2625f6ba1efd5a2ca7c33d7af6ef313db9e45c497f79cc873 ====
/* default keysyms */

==== emscripten-source/system/include/X11/keysymdef.h lines 1-47 sha256 6bbf351a5d24daecee82f85e7cd6db377e43d6f309b259e1feb6cb8aeee3c529 ====
/***********************************************************
Copyright 1987, 1994, 1998  The Open Group

Permission to use, copy, modify, distribute, and sell this software and its
documentation for any purpose is hereby granted without fee, provided that
the above copyright notice appear in all copies and that both that
copyright notice and this permission notice appear in supporting
documentation.

The above copyright notice and this permission notice shall be included
in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
IN NO EVENT SHALL THE OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR
OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
OTHER DEALINGS IN THE SOFTWARE.

Except as contained in this notice, the name of The Open Group shall
not be used in advertising or otherwise to promote the sale, use or
other dealings in this Software without prior written authorization
from The Open Group.


Copyright 1987 by Digital Equipment Corporation, Maynard, Massachusetts

                        All Rights Reserved

Permission to use, copy, modify, and distribute this software and its
documentation for any purpose and without fee is hereby granted,
provided that the above copyright notice appear in all copies and that
both that copyright notice and this permission notice appear in
supporting documentation, and that the name of Digital not be
used in advertising or publicity pertaining to distribution of the
software without specific, written prior permission.

DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR
ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
SOFTWARE.

******************************************************************/

==== emscripten-source/system/include/X11/keysymdef.h lines 49-113 sha256 3f1a3f81757dbbe8af6b0de64c492756159ea474918754658bc25202c3690bc1 ====
/*
 * The "X11 Window System Protocol" standard defines in Appendix A the
 * keysym codes. These 29-bit integer values identify characters or
 * functions associated with each key (e.g., via the visible
 * engraving) of a keyboard layout. This file assigns mnemonic macro
 * names for these keysyms.
 *
 * This file is also compiled (by src/util/makekeys.c in libX11) into
 * hash tables that can be accessed with X11 library functions such as
 * XStringToKeysym() and XKeysymToString().
 *
 * Where a keysym corresponds one-to-one to an ISO 10646 / Unicode
 * character, this is noted in a comment that provides both the U+xxxx
 * Unicode position, as well as the official Unicode name of the
 * character.
 *
 * Where the correspondence is either not one-to-one or semantically
 * unclear, the Unicode position and name are enclosed in
 * parentheses. Such legacy keysyms should be considered deprecated
 * and are not recommended for use in future keyboard mappings.
 *
 * For any future extension of the keysyms with characters already
 * found in ISO 10646 / Unicode, the following algorithm shall be
 * used. The new keysym code position will simply be the character's
 * Unicode number plus 0x01000000. The keysym values in the range
 * 0x01000100 to 0x0110ffff are reserved to represent Unicode
 * characters in the range U+0100 to U+10FFFF.
 * 
 * While most newer Unicode-based X11 clients do already accept
 * Unicode-mapped keysyms in the range 0x01000100 to 0x0110ffff, it
 * will remain necessary for clients -- in the interest of
 * compatibility with existing servers -- to also understand the
 * existing legacy keysym values in the range 0x0100 to 0x20ff.
 *
 * Where several mnemonic names are defined for the same keysym in this
 * file, all but the first one listed should be considered deprecated.
 *
 * Mnemonic names for keysyms are defined in this file with lines
 * that match one of these Perl regular expressions:
 *
 *    /^\#define XK_([a-zA-Z_0-9]+)\s+0x([0-9a-f]+)\s*\/\* U+([0-9A-F]{4,6}) (.*) \*\/\s*$/
 *    /^\#define XK_([a-zA-Z_0-9]+)\s+0x([0-9a-f]+)\s*\/\*\(U+([0-9A-F]{4,6}) (.*)\)\*\/\s*$/
 *    /^\#define XK_([a-zA-Z_0-9]+)\s+0x([0-9a-f]+)\s*(\/\*\s*(.*)\s*\*\/)?\s*$/
 *
 * Before adding new keysyms, please do consider the following: In
 * addition to the keysym names defined in this file, the
 * XStringToKeysym() and XKeysymToString() functions will also handle
 * any keysym string of the form "U0020" to "U007E" and "U00A0" to
 * "U10FFFF" for all possible Unicode characters. In other words,
 * every possible Unicode character has already a keysym string
 * defined algorithmically, even if it is not listed here. Therefore,
 * defining an additional keysym macro is only necessary where a
 * non-hexadecimal mnemonic name is needed, or where the new keysym
 * does not represent any existing Unicode character.
 *
 * When adding new keysyms to this file, do not forget to also update the
 * following:
 *
 *   - the mappings in src/KeyBind.c in the repo
 *     git://anongit.freedesktop.org/xorg/lib/libX11
 *
 *   - the protocol specification in specs/XProtocol/X11.keysyms
 *     in the repo git://anongit.freedesktop.org/xorg/doc/xorg-docs
 *
 */

==== emscripten-source/system/include/X11/keysymdef.h lines 634-634 sha256 e110eaacae0ed5acc78f1178b6c2274b549f29a89a3f8974d359004867808dc8 ====
#define XK_copyright                     0x00a9  /* U+00A9 COPYRIGHT SIGN */

==== emscripten-source/system/include/X11/keysymdef.h lines 1496-1496 sha256 5f349a3f12c5864c72861db8adee163a78619e455dafe3e0d203886caeba4436 ====
#define XK_phonographcopyright           0x0afb  /* U+2117 SOUND RECORDING COPYRIGHT */

==== emscripten-source/system/include/compat/immintrin.h lines 1-6 sha256 67ce291b07b634dcc17316a0c56e20ef412203ffdeadfbcef6a9fd0896e7f295 ====
also in: emscripten-source/system/include/emscripten/em_macros.h:1-6, emscripten-source/system/include/emscripten/html5_webgl.h:1-6
/*
 * Copyright 2020 The Emscripten Authors.  All rights reserved.
 * Emscripten is available under two separate licenses, the MIT license and the
 * University of Illinois/NCSA Open Source License.  Both these licenses can be
 * found in the LICENSE file.
 */

==== emscripten-source/system/include/compat/sys/timeb.h lines 1-7 sha256 3586cc1f794bdd4311cf9875cdc946dd6b3a033c4c029455c988572e51be5b9b ====
/* timeb.h -- An implementation of the standard Unix <sys/timeb.h> file.
   Written by Ian Lance Taylor <ian@cygnus.com>
   Public domain; no rights reserved.

   <sys/timeb.h> declares the structure used by the ftime function, as
   well as the ftime function itself.  Newlib does not provide an
   implementation of ftime.  */

==== emscripten-source/system/include/emscripten/atomic.h lines 1-6 sha256 9dfe31a886db8de923f6ace2d6c58ef19d9f33af036c64df9fe92c5c90c54ccf ====
also in: emscripten-source/system/include/emscripten/threading.h:1-6
/*
 * Copyright 2015 The Emscripten Authors.  All rights reserved.
 * Emscripten is available under two separate licenses, the MIT license and the
 * University of Illinois/NCSA Open Source License.  Both these licenses can be
 * found in the LICENSE file.
 */

==== emscripten-source/system/include/emscripten/console.h lines 1-6 sha256 b44dfabc45cfc4981a4703ed95b3de23300dfdddb4f80377a188f648007c3c02 ====
also in: emscripten-source/system/include/emscripten/eventloop.h:1-6
/*
 * Copyright 2021 The Emscripten Authors.  All rights reserved.
 * Emscripten is available under two separate licenses, the MIT license and the
 * University of Illinois/NCSA Open Source License.  Both these licenses can be
 * found in the LICENSE file.
 */

==== emscripten-source/system/include/emscripten/em_asm.h lines 1-6 sha256 427b3d977e037c687baf589add4105b6432a14e21df2575c89ae409b628527e0 ====
/*
 * Copyright 2017 The Emscripten Authors.  All rights reserved.
 * Emscripten is available under two separate licenses, the MIT license and the
 * University of Illinois/NCSA Open Source License.  Both these licenses can be
 * found in the LICENSE file.
 */

==== emscripten-source/system/include/emscripten/em_js.h lines 1-6 sha256 3d68645a7fba94eec7a40bbd7aa099d7982b3f854681f15ce968a8e83061fd45 ====
/*
 * Copyright 2018 The Emscripten Authors.  All rights reserved.
 * Emscripten is available under two separate licenses, the MIT license and the
 * University of Illinois/NCSA Open Source License.  Both these licenses can be
 * found in the LICENSE file.
 */

==== emscripten-source/system/include/emscripten/em_types.h lines 1-6 sha256 94de9bf841de48765a28e15d7373baad2547462550706e6aa0f4c93099ff8631 ====
also in: emscripten-source/system/include/emscripten/emscripten.h:1-6, emscripten-source/system/include/emscripten/wget.h:1-6
/*
 * Copyright 2012 The Emscripten Authors.  All rights reserved.
 * Emscripten is available under two separate licenses, the MIT license and the
 * University of Illinois/NCSA Open Source License.  Both these licenses can be
 * found in the LICENSE file.
 */

==== emscripten-source/system/include/emscripten/html5.h lines 1-6 sha256 19555e32d6f2ca9192e5e7f94c95356d60abfff7f85e1cbb86232bcf3e3b5bed ====
/*
 * Copyright 2014 The Emscripten Authors.  All rights reserved.
 * Emscripten is available under two separate licenses, the MIT license and the
 * University of Illinois/NCSA Open Source License.  Both these licenses can be
 * found in the LICENSE file.
 */

==== emscripten-source/system/include/emscripten/promise.h lines 1-6 sha256 b884b69230123605a25772186035d48552b08a9b808b3ee00ede0aba8b52b7d9 ====
/*
 * Copyright 2023 The Emscripten Authors.  All rights reserved.
 * Emscripten is available under two separate licenses, the MIT license and the
 * University of Illinois/NCSA Open Source License.  Both these licenses can be
 * found in the LICENSE file.
 */

==== emscripten-source/system/include/emscripten/threading_legacy.h lines 1-8 sha256 99672431e39e88a6304eee0f4d48176887848ff0d01ebc510fe34a39d0376b2e ====
/*
 * Copyright 2015 The Emscripten Authors.  All rights reserved.
 * Emscripten is available under two separate licenses, the MIT license and the
 * University of Illinois/NCSA Open Source License.  Both these licenses can be
 * found in the LICENSE file.
 *
 * Legacy proxying functions.  See proxying.h for the new proxying system.
 */

==== emscripten-source/system/include/emscripten/threading_primitives.h lines 1-6 sha256 7b614dbede35ca92d77c8f56b85805d34c3c7e0cabde1f4bb84956867ddce0a1 ====
/*
 * Copyright 2026 The Emscripten Authors.  All rights reserved.
 * Emscripten is available under two separate licenses, the MIT license and the
 * University of Illinois/NCSA Open Source License.  Both these licenses can be
 * found in the LICENSE file.
 */

==== emscripten-source/system/include/emscripten/version.h lines 1-7 sha256 6b153d9c2274f9041ae286955d8ed628fe62ab15d191560ad2a7a45f9851bd26 ====
/*
 * If anyone ever ends up including this file it would be an error
 * since this directory should never be in the include path.
 * The real version of this file gets auto-generated inside the
 * `sysroot/include` directory (which should be in the include path
 * instead).
 */

==== emscripten-source/system/include/wasi/api.h lines 1-14 sha256 f53059ea147d942a3f1c4ee5ac6774a29e793c95d35d390b71b47cfd96a41977 ====
/**
 * THIS FILE IS AUTO-GENERATED from the following files:
 *   typenames.witx, wasi_snapshot_preview1.witx
 *
 * @file
 * This file describes the [WASI] interface, consisting of functions, types,
 * and defined values (macros).
 *
 * The interface described here is greatly inspired by [CloudABI]'s clean,
 * thoughtfully-designed, capability-oriented, POSIX-style API.
 *
 * [CloudABI]: https://github.com/NuxiNL/cloudlibc
 * [WASI]: https://github.com/WebAssembly/WASI/
 */

==== emscripten-source/system/include/wasi/api.h lines 16-24 sha256 40df946a21c166e9bb4bcfd4e4f7fdb87582872bcab5e01efe27b5df19193244 ====
/*
 * File origin:
 *   https://github.com/WebAssembly/wasi-libc/blob/main/libc-bottom-half/headers/public/wasi/api.h
 * Revision:
 *   2c2fc9a2fddd0927a66f1c142e65c8dab6f5c5d7
 * License:
 *   CC0 1.0 Universal (CC0 1.0) Public Domain Dedication
 *   https://creativecommons.org/publicdomain/zero/1.0/
 */

==== emscripten-source/system/include/wasi/api.h lines 123-125 sha256 932d7570e13c93e01d38a9c621718b70fb05542bca288d48a3c611edfeb6c09d ====
/**
 * Permission denied.
 */

==== emscripten-source/system/lib/compiler-rt/include/sanitizer/common_interface_defs.h lines 1-10 sha256 0f9629658c76598bcae3f8318442bb841684038d98680a6f5b5f9137dd69d7dd ====
//===-- sanitizer/common_interface_defs.h -----------------------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//===----------------------------------------------------------------------===//
//
// Common part of the public sanitizer interface.
//===----------------------------------------------------------------------===//

==== emscripten-source/system/lib/compiler-rt/include/sanitizer/lsan_interface.h lines 1-12 sha256 1fc242a9625f578a16bdceaaa326b52a0b142735830c952cc27f53e9d7577ff8 ====
//===-- sanitizer/lsan_interface.h ------------------------------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//===----------------------------------------------------------------------===//
//
// This file is a part of LeakSanitizer.
//
// Public interface header.
//===----------------------------------------------------------------------===//

==== emscripten-source/system/lib/libc/musl/arch/emscripten/bits/alltypes.h lines 1-4 sha256 c25990cd35619dd3e1fad57bb959ef1a1f5b5848eb63df821764d6b62cfdeadf ====
/*
 * The .h version of this file is generated from the .h.in.
 * See update_alltypes.sh.
 */

==== emscripten-source/system/lib/libc/musl/arch/emscripten/bits/mman.h lines 1-3 sha256 85365005a6419a4e99f52ee7f584c280079389b188aab8b37e0e48b16a7b11f2 ====
// XXX Emscripten in sync with both:
// - musl/arch/x86_64/bits/mman.h
// - musl/arch/i386/bits/mman.h

==== emscripten-source/system/lib/libc/musl/arch/emscripten/bits/setjmp.h lines 1-1 sha256 b2e014d5d47aed27749765570d7b9a73a54812267f7d91612ea31070893f895e ====
// XXX Emscripten in sync with musl/arch/i386/bits/setjmp.h

==== emscripten-source/system/lib/libc/musl/arch/emscripten/bits/signal.h lines 1-1 sha256 35e57c3d714939bc4e9dfe192895611b51458738181365ff8a5eac0cdfdca600 ====
// XXX Emscripten in sync with musl/arch/i386/bits/signal.h

==== emscripten-source/system/lib/libc/musl/arch/emscripten/bits/stat.h lines 1-2 sha256 cc3edc49de253ddfdceea2f93db8d3c4e6066398551c6132a77553b78ad700cd ====
// XXX Emscripten in sync with musl/arch/i386/bits/stat.h except for the padding,
// 64-bit time_t redirections change and st_ino placement.

==== emscripten-source/system/lib/libc/musl/arch/emscripten/bits/stat.h lines 4-5 sha256 9f9bcd6caaf4a7783651ca6703dee1eb402bacdd0f5eaaa1432aeb4aa1ffbd68 ====
/* copied from kernel definition, but with padding replaced
 * by the corresponding correctly-sized userspace types. */

==== emscripten-source/system/lib/libcxx/include/__algorithm/adjacent_find.h lines 1-8 sha256 ec580ecb8719ce7923879d365f79abead887349565b29ccf742da8c52ac6b860 ====
also in: emscripten-source/system/lib/libcxx/include/__algorithm/all_of.h:1-8, emscripten-source/system/lib/libcxx/include/__algorithm/any_of.h:1-8, emscripten-source/system/lib/libcxx/include/__algorithm/count.h:1-8, emscripten-source/system/lib/libcxx/include/__algorithm/count_if.h:1-8, emscripten-source/system/lib/libcxx/include/__algorithm/equal.h:1-8, emscripten-source/system/lib/libcxx/include/__algorithm/find.h:1-8, emscripten-source/system/lib/libcxx/include/__algorithm/find_end.h:1-8, emscripten-source/system/lib/libcxx/include/__algorithm/find_first_of.h:1-8, emscripten-source/system/lib/libcxx/include/__algorithm/find_if.h:1-8, emscripten-source/system/lib/libcxx/include/__algorithm/find_if_not.h:1-8, emscripten-source/system/lib/libcxx/include/__algorithm/for_each.h:1-8, emscripten-source/system/lib/libcxx/include/__algorithm/for_each_n.h:1-8, emscripten-source/system/lib/libcxx/include/__algorithm/in_found_result.h:1-8, emscripten-source/system/lib/libcxx/include/__algorithm/in_fun_result.h:1-8, emscripten-source/system/lib/libcxx/include/__algorithm/in_in_out_result.h:1-8, emscripten-source/system/lib/libcxx/include/__algorithm/in_in_result.h:1-8, emscripten-source/system/lib/libcxx/include/__algorithm/in_out_out_result.h:1-8, emscripten-source/system/lib/libcxx/include/__algorithm/in_out_result.h:1-8, emscripten-source/system/lib/libcxx/include/__algorithm/is_permutation.h:1-8, emscripten-source/system/lib/libcxx/include/__algorithm/min_max_result.h:1-8, emscripten-source/system/lib/libcxx/include/__algorithm/mismatch.h:1-8, emscripten-source/system/lib/libcxx/include/__algorithm/none_of.h:1-8, emscripten-source/system/lib/libcxx/include/__algorithm/out_value_result.h:1-8, emscripten-source/system/lib/libcxx/include/__algorithm/radix_sort.h:1-8, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_fold.h:1-8, emscripten-source/system/lib/libcxx/include/__algorithm/search.h:1-8, emscripten-source/system/lib/libcxx/include/__algorithm/search_n.h:1-8, emscripten-source/system/lib/libcxx/include/__assert:1-8, emscripten-source/system/lib/libcxx/include/__assertion_handler:1-8, emscripten-source/system/lib/libcxx/include/__bit/bit_cast.h:1-8, emscripten-source/system/lib/libcxx/include/__bit/byteswap.h:1-8, emscripten-source/system/lib/libcxx/include/__bit_reference:1-8, emscripten-source/system/lib/libcxx/include/__charconv/chars_format.h:1-8, emscripten-source/system/lib/libcxx/include/__charconv/from_chars_floating_point.h:1-8, emscripten-source/system/lib/libcxx/include/__charconv/from_chars_integral.h:1-8, emscripten-source/system/lib/libcxx/include/__charconv/from_chars_result.h:1-8, emscripten-source/system/lib/libcxx/include/__charconv/tables.h:1-8, emscripten-source/system/lib/libcxx/include/__charconv/to_chars.h:1-8, emscripten-source/system/lib/libcxx/include/__charconv/to_chars_base_10.h:1-8, emscripten-source/system/lib/libcxx/include/__charconv/to_chars_floating_point.h:1-8, emscripten-source/system/lib/libcxx/include/__charconv/to_chars_integral.h:1-8, emscripten-source/system/lib/libcxx/include/__charconv/to_chars_result.h:1-8, emscripten-source/system/lib/libcxx/include/__charconv/traits.h:1-8, emscripten-source/system/lib/libcxx/include/__chrono/calendar.h:1-8, emscripten-source/system/lib/libcxx/include/__chrono/concepts.h:1-8, emscripten-source/system/lib/libcxx/include/__chrono/convert_to_timespec.h:1-8, emscripten-source/system/lib/libcxx/include/__chrono/convert_to_tm.h:1-8, emscripten-source/system/lib/libcxx/include/__chrono/day.h:1-8, emscripten-source/system/lib/libcxx/include/__chrono/duration.h:1-8, emscripten-source/system/lib/libcxx/include/__chrono/exception.h:1-8, emscripten-source/system/lib/libcxx/include/__chrono/file_clock.h:1-8, emscripten-source/system/lib/libcxx/include/__chrono/formatter.h:1-8, emscripten-source/system/lib/libcxx/include/__chrono/gps_clock.h:1-8, emscripten-source/system/lib/libcxx/include/__chrono/hh_mm_ss.h:1-8, emscripten-source/system/lib/libcxx/include/__chrono/high_resolution_clock.h:1-8, emscripten-source/system/lib/libcxx/include/__chrono/leap_second.h:1-8, emscripten-source/system/lib/libcxx/include/__chrono/literals.h:1-8, emscripten-source/system/lib/libcxx/include/__chrono/local_info.h:1-8, emscripten-source/system/lib/libcxx/include/__chrono/month.h:1-8, emscripten-source/system/lib/libcxx/include/__chrono/month_weekday.h:1-8, emscripten-source/system/lib/libcxx/include/__chrono/monthday.h:1-8, emscripten-source/system/lib/libcxx/include/__chrono/ostream.h:1-8, emscripten-source/system/lib/libcxx/include/__chrono/parser_std_format_spec.h:1-8, emscripten-source/system/lib/libcxx/include/__chrono/statically_widen.h:1-8, emscripten-source/system/lib/libcxx/include/__chrono/steady_clock.h:1-8, emscripten-source/system/lib/libcxx/include/__chrono/sys_info.h:1-8, emscripten-source/system/lib/libcxx/include/__chrono/system_clock.h:1-8, emscripten-source/system/lib/libcxx/include/__chrono/tai_clock.h:1-8, emscripten-source/system/lib/libcxx/include/__chrono/time_point.h:1-8, emscripten-source/system/lib/libcxx/include/__chrono/time_zone.h:1-8, emscripten-source/system/lib/libcxx/include/__chrono/time_zone_link.h:1-8, emscripten-source/system/lib/libcxx/include/__chrono/tzdb.h:1-8, emscripten-source/system/lib/libcxx/include/__chrono/tzdb_list.h:1-8, emscripten-source/system/lib/libcxx/include/__chrono/utc_clock.h:1-8, emscripten-source/system/lib/libcxx/include/__chrono/weekday.h:1-8, emscripten-source/system/lib/libcxx/include/__chrono/year.h:1-8, emscripten-source/system/lib/libcxx/include/__chrono/year_month.h:1-8, emscripten-source/system/lib/libcxx/include/__chrono/year_month_day.h:1-8, emscripten-source/system/lib/libcxx/include/__chrono/year_month_weekday.h:1-8, emscripten-source/system/lib/libcxx/include/__chrono/zoned_time.h:1-8, emscripten-source/system/lib/libcxx/include/__compare/compare_three_way.h:1-8, emscripten-source/system/lib/libcxx/include/__config:1-8, emscripten-source/system/lib/libcxx/include/__configuration/abi.h:1-8, emscripten-source/system/lib/libcxx/include/__configuration/availability.h:1-8, emscripten-source/system/lib/libcxx/include/__configuration/compiler.h:1-8, emscripten-source/system/lib/libcxx/include/__configuration/language.h:1-8, emscripten-source/system/lib/libcxx/include/__configuration/platform.h:1-8, emscripten-source/system/lib/libcxx/include/__filesystem/copy_options.h:1-8, emscripten-source/system/lib/libcxx/include/__filesystem/directory_entry.h:1-8, emscripten-source/system/lib/libcxx/include/__filesystem/directory_iterator.h:1-8, emscripten-source/system/lib/libcxx/include/__filesystem/directory_options.h:1-8, emscripten-source/system/lib/libcxx/include/__filesystem/file_status.h:1-8, emscripten-source/system/lib/libcxx/include/__filesystem/file_time_type.h:1-8, emscripten-source/system/lib/libcxx/include/__filesystem/file_type.h:1-8, emscripten-source/system/lib/libcxx/include/__filesystem/filesystem_error.h:1-8, emscripten-source/system/lib/libcxx/include/__filesystem/operations.h:1-8, emscripten-source/system/lib/libcxx/include/__filesystem/path.h:1-8, emscripten-source/system/lib/libcxx/include/__filesystem/path_iterator.h:1-8, emscripten-source/system/lib/libcxx/include/__filesystem/perm_options.h:1-8, emscripten-source/system/lib/libcxx/include/__filesystem/perms.h:1-8, emscripten-source/system/lib/libcxx/include/__filesystem/recursive_directory_iterator.h:1-8, emscripten-source/system/lib/libcxx/include/__filesystem/space_info.h:1-8, emscripten-source/system/lib/libcxx/include/__filesystem/u8path.h:1-8, emscripten-source/system/lib/libcxx/include/__format/buffer.h:1-8, emscripten-source/system/lib/libcxx/include/__format/concepts.h:1-8, emscripten-source/system/lib/libcxx/include/__format/container_adaptor.h:1-8, emscripten-source/system/lib/libcxx/include/__format/enable_insertable.h:1-8, emscripten-source/system/lib/libcxx/include/__format/escaped_output_table.h:1-8, emscripten-source/system/lib/libcxx/include/__format/extended_grapheme_cluster_table.h:1-8, emscripten-source/system/lib/libcxx/include/__format/format_arg.h:1-8, emscripten-source/system/lib/libcxx/include/__format/format_arg_store.h:1-8, emscripten-source/system/lib/libcxx/include/__format/format_args.h:1-8, emscripten-source/system/lib/libcxx/include/__format/format_context.h:1-8, emscripten-source/system/lib/libcxx/include/__format/format_error.h:1-8, emscripten-source/system/lib/libcxx/include/__format/format_functions.h:1-8, emscripten-source/system/lib/libcxx/include/__format/format_parse_context.h:1-8, emscripten-source/system/lib/libcxx/include/__format/format_string.h:1-8, emscripten-source/system/lib/libcxx/include/__format/format_to_n_result.h:1-8, emscripten-source/system/lib/libcxx/include/__format/formatter.h:1-8, emscripten-source/system/lib/libcxx/include/__format/formatter_bool.h:1-8, emscripten-source/system/lib/libcxx/include/__format/formatter_char.h:1-8, emscripten-source/system/lib/libcxx/include/__format/formatter_floating_point.h:1-8, emscripten-source/system/lib/libcxx/include/__format/formatter_integer.h:1-8, emscripten-source/system/lib/libcxx/include/__format/formatter_integral.h:1-8, emscripten-source/system/lib/libcxx/include/__format/formatter_output.h:1-8, emscripten-source/system/lib/libcxx/include/__format/formatter_pointer.h:1-8, emscripten-source/system/lib/libcxx/include/__format/formatter_string.h:1-8, emscripten-source/system/lib/libcxx/include/__format/formatter_tuple.h:1-8, emscripten-source/system/lib/libcxx/include/__format/indic_conjunct_break_table.h:1-8, emscripten-source/system/lib/libcxx/include/__format/parser_std_format_spec.h:1-8, emscripten-source/system/lib/libcxx/include/__format/range_default_formatter.h:1-8, emscripten-source/system/lib/libcxx/include/__format/range_formatter.h:1-8, emscripten-source/system/lib/libcxx/include/__format/unicode.h:1-8, emscripten-source/system/lib/libcxx/include/__format/width_estimation_table.h:1-8, emscripten-source/system/lib/libcxx/include/__format/write_escaped.h:1-8, emscripten-source/system/lib/libcxx/include/__functional/binary_function.h:1-8, emscripten-source/system/lib/libcxx/include/__functional/binary_negate.h:1-8, emscripten-source/system/lib/libcxx/include/__functional/bind.h:1-8, emscripten-source/system/lib/libcxx/include/__functional/bind_back.h:1-8, emscripten-source/system/lib/libcxx/include/__functional/bind_front.h:1-8, emscripten-source/system/lib/libcxx/include/__functional/binder1st.h:1-8, emscripten-source/system/lib/libcxx/include/__functional/binder2nd.h:1-8, emscripten-source/system/lib/libcxx/include/__functional/compose.h:1-8, emscripten-source/system/lib/libcxx/include/__functional/default_searcher.h:1-8, emscripten-source/system/lib/libcxx/include/__functional/function.h:1-8, emscripten-source/system/lib/libcxx/include/__functional/identity.h:1-8, emscripten-source/system/lib/libcxx/include/__functional/invoke.h:1-8, emscripten-source/system/lib/libcxx/include/__functional/is_transparent.h:1-8, emscripten-source/system/lib/libcxx/include/__functional/mem_fn.h:1-8, emscripten-source/system/lib/libcxx/include/__functional/mem_fun_ref.h:1-8, emscripten-source/system/lib/libcxx/include/__functional/not_fn.h:1-8, emscripten-source/system/lib/libcxx/include/__functional/operations.h:1-8, emscripten-source/system/lib/libcxx/include/__functional/perfect_forward.h:1-8, emscripten-source/system/lib/libcxx/include/__functional/pointer_to_binary_function.h:1-8, emscripten-source/system/lib/libcxx/include/__functional/pointer_to_unary_function.h:1-8, emscripten-source/system/lib/libcxx/include/__functional/ranges_operations.h:1-8, emscripten-source/system/lib/libcxx/include/__functional/reference_wrapper.h:1-8, emscripten-source/system/lib/libcxx/include/__functional/unary_negate.h:1-8, emscripten-source/system/lib/libcxx/include/__functional/weak_result_type.h:1-8, emscripten-source/system/lib/libcxx/include/__fwd/format.h:1-8, emscripten-source/system/lib/libcxx/include/__hash_table:1-8, emscripten-source/system/lib/libcxx/include/__ios/fpos.h:1-8, emscripten-source/system/lib/libcxx/include/__iterator/access.h:1-8, emscripten-source/system/lib/libcxx/include/__iterator/advance.h:1-8, emscripten-source/system/lib/libcxx/include/__iterator/back_insert_iterator.h:1-8, emscripten-source/system/lib/libcxx/include/__iterator/bounded_iter.h:1-8, emscripten-source/system/lib/libcxx/include/__iterator/common_iterator.h:1-8, emscripten-source/system/lib/libcxx/include/__iterator/concepts.h:1-8, emscripten-source/system/lib/libcxx/include/__iterator/counted_iterator.h:1-8, emscripten-source/system/lib/libcxx/include/__iterator/data.h:1-8, emscripten-source/system/lib/libcxx/include/__iterator/default_sentinel.h:1-8, emscripten-source/system/lib/libcxx/include/__iterator/distance.h:1-8, emscripten-source/system/lib/libcxx/include/__iterator/empty.h:1-8, emscripten-source/system/lib/libcxx/include/__iterator/erase_if_container.h:1-8, emscripten-source/system/lib/libcxx/include/__iterator/front_insert_iterator.h:1-8, emscripten-source/system/lib/libcxx/include/__iterator/incrementable_traits.h:1-8, emscripten-source/system/lib/libcxx/include/__iterator/indirectly_comparable.h:1-8, emscripten-source/system/lib/libcxx/include/__iterator/insert_iterator.h:1-8, emscripten-source/system/lib/libcxx/include/__iterator/istream_iterator.h:1-8, emscripten-source/system/lib/libcxx/include/__iterator/istreambuf_iterator.h:1-8, emscripten-source/system/lib/libcxx/include/__iterator/iter_move.h:1-8, emscripten-source/system/lib/libcxx/include/__iterator/iter_swap.h:1-8, emscripten-source/system/lib/libcxx/include/__iterator/iterator.h:1-8, emscripten-source/system/lib/libcxx/include/__iterator/iterator_traits.h:1-8, emscripten-source/system/lib/libcxx/include/__iterator/mergeable.h:1-8, emscripten-source/system/lib/libcxx/include/__iterator/move_iterator.h:1-8, emscripten-source/system/lib/libcxx/include/__iterator/next.h:1-8, emscripten-source/system/lib/libcxx/include/__iterator/ostream_iterator.h:1-8, emscripten-source/system/lib/libcxx/include/__iterator/ostreambuf_iterator.h:1-8, emscripten-source/system/lib/libcxx/include/__iterator/permutable.h:1-8, emscripten-source/system/lib/libcxx/include/__iterator/prev.h:1-8, emscripten-source/system/lib/libcxx/include/__iterator/projected.h:1-8, emscripten-source/system/lib/libcxx/include/__iterator/ranges_iterator_traits.h:1-8, emscripten-source/system/lib/libcxx/include/__iterator/readable_traits.h:1-8, emscripten-source/system/lib/libcxx/include/__iterator/reverse_access.h:1-8, emscripten-source/system/lib/libcxx/include/__iterator/reverse_iterator.h:1-8, emscripten-source/system/lib/libcxx/include/__iterator/size.h:1-8, emscripten-source/system/lib/libcxx/include/__iterator/sortable.h:1-8, emscripten-source/system/lib/libcxx/include/__iterator/static_bounded_iter.h:1-8, emscripten-source/system/lib/libcxx/include/__iterator/unreachable_sentinel.h:1-8, emscripten-source/system/lib/libcxx/include/__iterator/wrap_iter.h:1-8, emscripten-source/system/lib/libcxx/include/__locale:1-8, emscripten-source/system/lib/libcxx/include/__log_hardening_failure:1-8, emscripten-source/system/lib/libcxx/include/__math/special_functions.h:1-8, emscripten-source/system/lib/libcxx/include/__mbstate_t.h:1-8, emscripten-source/system/lib/libcxx/include/__memory/addressof.h:1-8, emscripten-source/system/lib/libcxx/include/__memory/allocation_guard.h:1-8, emscripten-source/system/lib/libcxx/include/__memory/allocator.h:1-8, emscripten-source/system/lib/libcxx/include/__memory/allocator_arg_t.h:1-8, emscripten-source/system/lib/libcxx/include/__memory/allocator_traits.h:1-8, emscripten-source/system/lib/libcxx/include/__memory/array_cookie.h:1-8, emscripten-source/system/lib/libcxx/include/__memory/assume_aligned.h:1-8, emscripten-source/system/lib/libcxx/include/__memory/auto_ptr.h:1-8, emscripten-source/system/lib/libcxx/include/__memory/compressed_pair.h:1-8, emscripten-source/system/lib/libcxx/include/__memory/concepts.h:1-8, emscripten-source/system/lib/libcxx/include/__memory/construct_at.h:1-8, emscripten-source/system/lib/libcxx/include/__memory/inout_ptr.h:1-8, emscripten-source/system/lib/libcxx/include/__memory/is_sufficiently_aligned.h:1-8, emscripten-source/system/lib/libcxx/include/__memory/out_ptr.h:1-8, emscripten-source/system/lib/libcxx/include/__memory/pointer_traits.h:1-8, emscripten-source/system/lib/libcxx/include/__memory/ranges_construct_at.h:1-8, emscripten-source/system/lib/libcxx/include/__memory/ranges_destroy.h:1-8, emscripten-source/system/lib/libcxx/include/__memory/ranges_uninitialized_algorithms.h:1-8, emscripten-source/system/lib/libcxx/include/__memory/raw_storage_iterator.h:1-8, emscripten-source/system/lib/libcxx/include/__memory/shared_ptr.h:1-8, emscripten-source/system/lib/libcxx/include/__memory/temporary_buffer.h:1-8, emscripten-source/system/lib/libcxx/include/__memory/uninitialized_algorithms.h:1-8, emscripten-source/system/lib/libcxx/include/__memory/unique_ptr.h:1-8, emscripten-source/system/lib/libcxx/include/__memory/unique_temporary_buffer.h:1-8, emscripten-source/system/lib/libcxx/include/__memory/uses_allocator.h:1-8, emscripten-source/system/lib/libcxx/include/__node_handle:1-8, emscripten-source/system/lib/libcxx/include/__numeric/accumulate.h:1-8, emscripten-source/system/lib/libcxx/include/__numeric/adjacent_difference.h:1-8, emscripten-source/system/lib/libcxx/include/__numeric/exclusive_scan.h:1-8, emscripten-source/system/lib/libcxx/include/__numeric/gcd_lcm.h:1-8, emscripten-source/system/lib/libcxx/include/__numeric/inclusive_scan.h:1-8, emscripten-source/system/lib/libcxx/include/__numeric/inner_product.h:1-8, emscripten-source/system/lib/libcxx/include/__numeric/iota.h:1-8, emscripten-source/system/lib/libcxx/include/__numeric/midpoint.h:1-8, emscripten-source/system/lib/libcxx/include/__numeric/partial_sum.h:1-8, emscripten-source/system/lib/libcxx/include/__numeric/ranges_iota.h:1-8, emscripten-source/system/lib/libcxx/include/__numeric/reduce.h:1-8, emscripten-source/system/lib/libcxx/include/__numeric/saturation_arithmetic.h:1-8, emscripten-source/system/lib/libcxx/include/__numeric/transform_exclusive_scan.h:1-8, emscripten-source/system/lib/libcxx/include/__numeric/transform_inclusive_scan.h:1-8, emscripten-source/system/lib/libcxx/include/__numeric/transform_reduce.h:1-8, emscripten-source/system/lib/libcxx/include/__pstl/backends/serial.h:1-8, emscripten-source/system/lib/libcxx/include/__ranges/access.h:1-8, emscripten-source/system/lib/libcxx/include/__ranges/all.h:1-8, emscripten-source/system/lib/libcxx/include/__ranges/chunk_by_view.h:1-8, emscripten-source/system/lib/libcxx/include/__ranges/common_view.h:1-8, emscripten-source/system/lib/libcxx/include/__ranges/concepts.h:1-8, emscripten-source/system/lib/libcxx/include/__ranges/container_compatible_range.h:1-8, emscripten-source/system/lib/libcxx/include/__ranges/counted.h:1-8, emscripten-source/system/lib/libcxx/include/__ranges/dangling.h:1-8, emscripten-source/system/lib/libcxx/include/__ranges/data.h:1-8, emscripten-source/system/lib/libcxx/include/__ranges/drop_view.h:1-8, emscripten-source/system/lib/libcxx/include/__ranges/drop_while_view.h:1-8, emscripten-source/system/lib/libcxx/include/__ranges/elements_view.h:1-8, emscripten-source/system/lib/libcxx/include/__ranges/empty.h:1-8, emscripten-source/system/lib/libcxx/include/__ranges/empty_view.h:1-8, emscripten-source/system/lib/libcxx/include/__ranges/enable_borrowed_range.h:1-8, emscripten-source/system/lib/libcxx/include/__ranges/enable_view.h:1-8, emscripten-source/system/lib/libcxx/include/__ranges/filter_view.h:1-8, emscripten-source/system/lib/libcxx/include/__ranges/from_range.h:1-8, emscripten-source/system/lib/libcxx/include/__ranges/iota_view.h:1-8, emscripten-source/system/lib/libcxx/include/__ranges/istream_view.h:1-8, emscripten-source/system/lib/libcxx/include/__ranges/join_view.h:1-8, emscripten-source/system/lib/libcxx/include/__ranges/join_with_view.h:1-8, emscripten-source/system/lib/libcxx/include/__ranges/lazy_split_view.h:1-8, emscripten-source/system/lib/libcxx/include/__ranges/movable_box.h:1-8, emscripten-source/system/lib/libcxx/include/__ranges/non_propagating_cache.h:1-8, emscripten-source/system/lib/libcxx/include/__ranges/owning_view.h:1-8, emscripten-source/system/lib/libcxx/include/__ranges/range_adaptor.h:1-8, emscripten-source/system/lib/libcxx/include/__ranges/rbegin.h:1-8, emscripten-source/system/lib/libcxx/include/__ranges/ref_view.h:1-8, emscripten-source/system/lib/libcxx/include/__ranges/rend.h:1-8, emscripten-source/system/lib/libcxx/include/__ranges/repeat_view.h:1-8, emscripten-source/system/lib/libcxx/include/__ranges/reverse_view.h:1-8, emscripten-source/system/lib/libcxx/include/__ranges/single_view.h:1-8, emscripten-source/system/lib/libcxx/include/__ranges/size.h:1-8, emscripten-source/system/lib/libcxx/include/__ranges/split_view.h:1-8, emscripten-source/system/lib/libcxx/include/__ranges/subrange.h:1-8, emscripten-source/system/lib/libcxx/include/__ranges/take_view.h:1-8, emscripten-source/system/lib/libcxx/include/__ranges/take_while_view.h:1-8, emscripten-source/system/lib/libcxx/include/__ranges/to.h:1-8, emscripten-source/system/lib/libcxx/include/__ranges/transform_view.h:1-8, emscripten-source/system/lib/libcxx/include/__ranges/view_interface.h:1-8, emscripten-source/system/lib/libcxx/include/__ranges/views.h:1-8, emscripten-source/system/lib/libcxx/include/__ranges/zip_view.h:1-8, emscripten-source/system/lib/libcxx/include/__split_buffer:1-8, emscripten-source/system/lib/libcxx/include/__std_mbstate_t.h:1-8, emscripten-source/system/lib/libcxx/include/__stop_token/atomic_unique_lock.h:1-8, emscripten-source/system/lib/libcxx/include/__stop_token/intrusive_list_view.h:1-8, emscripten-source/system/lib/libcxx/include/__stop_token/intrusive_shared_ptr.h:1-8, emscripten-source/system/lib/libcxx/include/__stop_token/stop_callback.h:1-8, emscripten-source/system/lib/libcxx/include/__stop_token/stop_source.h:1-8, emscripten-source/system/lib/libcxx/include/__stop_token/stop_state.h:1-8, emscripten-source/system/lib/libcxx/include/__stop_token/stop_token.h:1-8, emscripten-source/system/lib/libcxx/include/__support/ibm/locale_mgmt_zos.h:1-8, emscripten-source/system/lib/libcxx/include/__support/ibm/nanosleep.h:1-8, emscripten-source/system/lib/libcxx/include/__system_error/errc.h:1-8, emscripten-source/system/lib/libcxx/include/__system_error/error_category.h:1-8, emscripten-source/system/lib/libcxx/include/__system_error/error_code.h:1-8, emscripten-source/system/lib/libcxx/include/__system_error/error_condition.h:1-8, emscripten-source/system/lib/libcxx/include/__system_error/system_error.h:1-8, emscripten-source/system/lib/libcxx/include/__system_error/throw_system_error.h:1-8, emscripten-source/system/lib/libcxx/include/__thread/formatter.h:1-8, emscripten-source/system/lib/libcxx/include/__thread/id.h:1-8, emscripten-source/system/lib/libcxx/include/__thread/jthread.h:1-8, emscripten-source/system/lib/libcxx/include/__thread/poll_with_backoff.h:1-8, emscripten-source/system/lib/libcxx/include/__thread/support.h:1-8, emscripten-source/system/lib/libcxx/include/__thread/support/c11.h:1-8, emscripten-source/system/lib/libcxx/include/__thread/support/external.h:1-8, emscripten-source/system/lib/libcxx/include/__thread/support/pthread.h:1-8, emscripten-source/system/lib/libcxx/include/__thread/support/windows.h:1-8, emscripten-source/system/lib/libcxx/include/__thread/this_thread.h:1-8, emscripten-source/system/lib/libcxx/include/__thread/thread.h:1-8, emscripten-source/system/lib/libcxx/include/__tree:1-8, emscripten-source/system/lib/libcxx/include/__type_traits/container_traits.h:1-8, emscripten-source/system/lib/libcxx/include/__type_traits/invoke.h:1-8, emscripten-source/system/lib/libcxx/include/__type_traits/is_specialization.h:1-8, emscripten-source/system/lib/libcxx/include/__undef_macros:1-8, emscripten-source/system/lib/libcxx/include/__utility/as_lvalue.h:1-8, emscripten-source/system/lib/libcxx/include/__utility/auto_cast.h:1-8, emscripten-source/system/lib/libcxx/include/__utility/forward.h:1-8, emscripten-source/system/lib/libcxx/include/__utility/forward_like.h:1-8, emscripten-source/system/lib/libcxx/include/__utility/move.h:1-8, emscripten-source/system/lib/libcxx/include/__utility/private_constructor_tag.h:1-8, emscripten-source/system/lib/libcxx/include/__utility/scope_guard.h:1-8, emscripten-source/system/lib/libcxx/include/__utility/to_underlying.h:1-8, emscripten-source/system/lib/libcxx/include/__variant/monostate.h:1-8, emscripten-source/system/lib/libcxx/include/__verbose_abort:1-8, emscripten-source/system/lib/libcxx/include/__verbose_trap:1-8, emscripten-source/system/lib/libcxx/include/algorithm:1-8, emscripten-source/system/lib/libcxx/include/any:1-8, emscripten-source/system/lib/libcxx/include/array:1-8, emscripten-source/system/lib/libcxx/include/atomic:1-8, emscripten-source/system/lib/libcxx/include/bitset:1-8, emscripten-source/system/lib/libcxx/include/cassert:1-8, emscripten-source/system/lib/libcxx/include/cctype:1-8, emscripten-source/system/lib/libcxx/include/cerrno:1-8, emscripten-source/system/lib/libcxx/include/cfenv:1-8, emscripten-source/system/lib/libcxx/include/cfloat:1-8, emscripten-source/system/lib/libcxx/include/charconv:1-8, emscripten-source/system/lib/libcxx/include/chrono:1-8, emscripten-source/system/lib/libcxx/include/cinttypes:1-8, emscripten-source/system/lib/libcxx/include/ciso646:1-8, emscripten-source/system/lib/libcxx/include/climits:1-8, emscripten-source/system/lib/libcxx/include/clocale:1-8, emscripten-source/system/lib/libcxx/include/cmath:1-8, emscripten-source/system/lib/libcxx/include/codecvt:1-8, emscripten-source/system/lib/libcxx/include/compare:1-8, emscripten-source/system/lib/libcxx/include/complex:1-8, emscripten-source/system/lib/libcxx/include/concepts:1-8, emscripten-source/system/lib/libcxx/include/condition_variable:1-8, emscripten-source/system/lib/libcxx/include/csignal:1-8, emscripten-source/system/lib/libcxx/include/cstdarg:1-8, emscripten-source/system/lib/libcxx/include/cstddef:1-8, emscripten-source/system/lib/libcxx/include/cstdint:1-8, emscripten-source/system/lib/libcxx/include/cstdio:1-8, emscripten-source/system/lib/libcxx/include/cstdlib:1-8, emscripten-source/system/lib/libcxx/include/cstring:1-8, emscripten-source/system/lib/libcxx/include/ctime:1-8, emscripten-source/system/lib/libcxx/include/ctype.h:1-8, emscripten-source/system/lib/libcxx/include/cwchar:1-8, emscripten-source/system/lib/libcxx/include/cwctype:1-8, emscripten-source/system/lib/libcxx/include/deque:1-8, emscripten-source/system/lib/libcxx/include/errno.h:1-8, emscripten-source/system/lib/libcxx/include/exception:1-8, emscripten-source/system/lib/libcxx/include/execution:1-8, emscripten-source/system/lib/libcxx/include/fenv.h:1-8, emscripten-source/system/lib/libcxx/include/filesystem:1-8, emscripten-source/system/lib/libcxx/include/float.h:1-8, emscripten-source/system/lib/libcxx/include/format:1-8, emscripten-source/system/lib/libcxx/include/forward_list:1-8, emscripten-source/system/lib/libcxx/include/fstream:1-8, emscripten-source/system/lib/libcxx/include/functional:1-8, emscripten-source/system/lib/libcxx/include/future:1-8, emscripten-source/system/lib/libcxx/include/initializer_list:1-8, emscripten-source/system/lib/libcxx/include/inttypes.h:1-8, emscripten-source/system/lib/libcxx/include/iomanip:1-8, emscripten-source/system/lib/libcxx/include/ios:1-8, emscripten-source/system/lib/libcxx/include/iosfwd:1-8, emscripten-source/system/lib/libcxx/include/iostream:1-8, emscripten-source/system/lib/libcxx/include/istream:1-8, emscripten-source/system/lib/libcxx/include/iterator:1-8, emscripten-source/system/lib/libcxx/include/limits:1-8, emscripten-source/system/lib/libcxx/include/list:1-8, emscripten-source/system/lib/libcxx/include/locale:1-8, emscripten-source/system/lib/libcxx/include/map:1-8, emscripten-source/system/lib/libcxx/include/math.h:1-8, emscripten-source/system/lib/libcxx/include/memory:1-8, emscripten-source/system/lib/libcxx/include/memory_resource:1-8, emscripten-source/system/lib/libcxx/include/mutex:1-8, emscripten-source/system/lib/libcxx/include/new:1-8, emscripten-source/system/lib/libcxx/include/numeric:1-8, emscripten-source/system/lib/libcxx/include/optional:1-8, emscripten-source/system/lib/libcxx/include/ostream:1-8, emscripten-source/system/lib/libcxx/include/print:1-8, emscripten-source/system/lib/libcxx/include/queue:1-8, emscripten-source/system/lib/libcxx/include/random:1-8, emscripten-source/system/lib/libcxx/include/ranges:1-8, emscripten-source/system/lib/libcxx/include/ratio:1-8, emscripten-source/system/lib/libcxx/include/regex:1-8, emscripten-source/system/lib/libcxx/include/set:1-8, emscripten-source/system/lib/libcxx/include/shared_mutex:1-8, emscripten-source/system/lib/libcxx/include/source_location:1-8, emscripten-source/system/lib/libcxx/include/sstream:1-8, emscripten-source/system/lib/libcxx/include/stack:1-8, emscripten-source/system/lib/libcxx/include/stdbool.h:1-8, emscripten-source/system/lib/libcxx/include/stddef.h:1-8, emscripten-source/system/lib/libcxx/include/stdexcept:1-8, emscripten-source/system/lib/libcxx/include/stdio.h:1-8, emscripten-source/system/lib/libcxx/include/stdlib.h:1-8, emscripten-source/system/lib/libcxx/include/streambuf:1-8, emscripten-source/system/lib/libcxx/include/string:1-8, emscripten-source/system/lib/libcxx/include/string.h:1-8, emscripten-source/system/lib/libcxx/include/string_view:1-8, emscripten-source/system/lib/libcxx/include/strstream:1-8, emscripten-source/system/lib/libcxx/include/system_error:1-8, emscripten-source/system/lib/libcxx/include/thread:1-8, emscripten-source/system/lib/libcxx/include/tuple:1-8, emscripten-source/system/lib/libcxx/include/type_traits:1-8, emscripten-source/system/lib/libcxx/include/typeindex:1-8, emscripten-source/system/lib/libcxx/include/typeinfo:1-8, emscripten-source/system/lib/libcxx/include/unordered_map:1-8, emscripten-source/system/lib/libcxx/include/unordered_set:1-8, emscripten-source/system/lib/libcxx/include/utility:1-8, emscripten-source/system/lib/libcxx/include/valarray:1-8, emscripten-source/system/lib/libcxx/include/variant:1-8, emscripten-source/system/lib/libcxx/include/vector:1-8, emscripten-source/system/lib/libcxx/include/version:1-8, emscripten-source/system/lib/libcxx/include/wchar.h:1-8, emscripten-source/system/lib/libcxx/include/wctype.h:1-8
// -*- C++ -*-
//===----------------------------------------------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//===----------------------------------------------------------------------===//

==== emscripten-source/system/lib/libcxx/include/__algorithm/binary_search.h lines 1-7 sha256 6d3cd1131919ff0a88c5fd43d13139fdaa41393d896886f6ab02d926f865ab36 ====
also in: emscripten-source/system/lib/libcxx/include/__algorithm/clamp.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/comp.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/comp_ref_type.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/copy.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/copy_backward.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/copy_if.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/copy_move_common.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/copy_n.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/equal_range.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/fill.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/fill_n.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/find_segment_if.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/for_each_n_segment.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/for_each_segment.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/generate.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/generate_n.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/half_positive.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/includes.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/inplace_merge.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/is_heap.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/is_heap_until.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/is_partitioned.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/is_sorted.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/is_sorted_until.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/iter_swap.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/iterator_operations.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/lexicographical_compare.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/lexicographical_compare_three_way.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/lower_bound.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/make_heap.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/make_projected.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/max.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/max_element.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/merge.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/min.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/min_element.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/minmax.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/minmax_element.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/move.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/move_backward.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/next_permutation.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/nth_element.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/partial_sort.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/partial_sort_copy.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/partition.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/partition_copy.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/partition_point.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/pop_heap.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/prev_permutation.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/pstl.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/push_heap.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_adjacent_find.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_all_of.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_any_of.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_binary_search.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_clamp.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_contains.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_contains_subrange.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_copy.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_copy_backward.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_copy_if.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_copy_n.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_count.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_count_if.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_ends_with.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_equal.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_equal_range.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_fill.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_fill_n.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_find.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_find_end.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_find_first_of.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_find_if.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_find_if_not.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_find_last.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_for_each.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_for_each_n.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_generate.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_generate_n.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_includes.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_inplace_merge.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_is_heap.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_is_heap_until.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_is_partitioned.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_is_permutation.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_is_sorted.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_is_sorted_until.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_iterator_concept.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_lexicographical_compare.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_lower_bound.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_make_heap.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_max.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_max_element.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_merge.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_min.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_min_element.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_minmax.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_minmax_element.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_mismatch.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_move.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_move_backward.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_next_permutation.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_none_of.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_nth_element.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_partial_sort.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_partial_sort_copy.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_partition.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_partition_copy.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_partition_point.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_pop_heap.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_prev_permutation.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_push_heap.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_remove.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_remove_copy.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_remove_copy_if.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_remove_if.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_replace.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_replace_copy.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_replace_copy_if.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_replace_if.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_reverse.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_reverse_copy.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_rotate.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_rotate_copy.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_sample.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_search.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_search_n.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_set_difference.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_set_intersection.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_set_symmetric_difference.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_set_union.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_shuffle.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_sort.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_sort_heap.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_stable_partition.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_stable_sort.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_starts_with.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_swap_ranges.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_transform.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_unique.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_unique_copy.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/ranges_upper_bound.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/remove.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/remove_copy.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/remove_copy_if.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/remove_if.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/replace.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/replace_copy.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/replace_copy_if.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/replace_if.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/reverse.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/reverse_copy.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/rotate.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/rotate_copy.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/sample.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/set_difference.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/set_intersection.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/set_symmetric_difference.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/set_union.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/shift_left.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/shift_right.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/shuffle.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/sift_down.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/simd_utils.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/sort.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/sort_heap.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/stable_partition.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/stable_sort.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/swap_ranges.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/three_way_comp_ref_type.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/transform.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/uniform_random_bit_generator_adaptor.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/unique.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/unique_copy.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/unwrap_iter.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/unwrap_range.h:1-7, emscripten-source/system/lib/libcxx/include/__algorithm/upper_bound.h:1-7, emscripten-source/system/lib/libcxx/include/__atomic/aliases.h:1-7, emscripten-source/system/lib/libcxx/include/__atomic/atomic.h:1-7, emscripten-source/system/lib/libcxx/include/__atomic/atomic_flag.h:1-7, emscripten-source/system/lib/libcxx/include/__atomic/atomic_init.h:1-7, emscripten-source/system/lib/libcxx/include/__atomic/atomic_lock_free.h:1-7, emscripten-source/system/lib/libcxx/include/__atomic/atomic_sync.h:1-7, emscripten-source/system/lib/libcxx/include/__atomic/check_memory_order.h:1-7, emscripten-source/system/lib/libcxx/include/__atomic/contention_t.h:1-7, emscripten-source/system/lib/libcxx/include/__atomic/fence.h:1-7, emscripten-source/system/lib/libcxx/include/__atomic/is_always_lock_free.h:1-7, emscripten-source/system/lib/libcxx/include/__atomic/kill_dependency.h:1-7, emscripten-source/system/lib/libcxx/include/__atomic/memory_order.h:1-7, emscripten-source/system/lib/libcxx/include/__atomic/support.h:1-7, emscripten-source/system/lib/libcxx/include/__atomic/support/c11.h:1-7, emscripten-source/system/lib/libcxx/include/__atomic/support/gcc.h:1-7, emscripten-source/system/lib/libcxx/include/__atomic/to_gcc_order.h:1-7, emscripten-source/system/lib/libcxx/include/__bit/bit_ceil.h:1-7, emscripten-source/system/lib/libcxx/include/__bit/bit_floor.h:1-7, emscripten-source/system/lib/libcxx/include/__bit/bit_log2.h:1-7, emscripten-source/system/lib/libcxx/include/__bit/bit_width.h:1-7, emscripten-source/system/lib/libcxx/include/__bit/blsr.h:1-7, emscripten-source/system/lib/libcxx/include/__bit/countl.h:1-7, emscripten-source/system/lib/libcxx/include/__bit/countr.h:1-7, emscripten-source/system/lib/libcxx/include/__bit/endian.h:1-7, emscripten-source/system/lib/libcxx/include/__bit/has_single_bit.h:1-7, emscripten-source/system/lib/libcxx/include/__bit/invert_if.h:1-7, emscripten-source/system/lib/libcxx/include/__bit/popcount.h:1-7, emscripten-source/system/lib/libcxx/include/__bit/rotate.h:1-7, emscripten-source/system/lib/libcxx/include/__compare/common_comparison_category.h:1-7, emscripten-source/system/lib/libcxx/include/__compare/compare_partial_order_fallback.h:1-7, emscripten-source/system/lib/libcxx/include/__compare/compare_strong_order_fallback.h:1-7, emscripten-source/system/lib/libcxx/include/__compare/compare_three_way_result.h:1-7, emscripten-source/system/lib/libcxx/include/__compare/compare_weak_order_fallback.h:1-7, emscripten-source/system/lib/libcxx/include/__compare/is_eq.h:1-7, emscripten-source/system/lib/libcxx/include/__compare/ordering.h:1-7, emscripten-source/system/lib/libcxx/include/__compare/partial_order.h:1-7, emscripten-source/system/lib/libcxx/include/__compare/strong_order.h:1-7, emscripten-source/system/lib/libcxx/include/__compare/synth_three_way.h:1-7, emscripten-source/system/lib/libcxx/include/__compare/three_way_comparable.h:1-7, emscripten-source/system/lib/libcxx/include/__compare/weak_order.h:1-7, emscripten-source/system/lib/libcxx/include/__concepts/arithmetic.h:1-7, emscripten-source/system/lib/libcxx/include/__concepts/assignable.h:1-7, emscripten-source/system/lib/libcxx/include/__concepts/boolean_testable.h:1-7, emscripten-source/system/lib/libcxx/include/__concepts/class_or_enum.h:1-7, emscripten-source/system/lib/libcxx/include/__concepts/common_reference_with.h:1-7, emscripten-source/system/lib/libcxx/include/__concepts/common_with.h:1-7, emscripten-source/system/lib/libcxx/include/__concepts/constructible.h:1-7, emscripten-source/system/lib/libcxx/include/__concepts/convertible_to.h:1-7, emscripten-source/system/lib/libcxx/include/__concepts/copyable.h:1-7, emscripten-source/system/lib/libcxx/include/__concepts/derived_from.h:1-7, emscripten-source/system/lib/libcxx/include/__concepts/destructible.h:1-7, emscripten-source/system/lib/libcxx/include/__concepts/different_from.h:1-7, emscripten-source/system/lib/libcxx/include/__concepts/equality_comparable.h:1-7, emscripten-source/system/lib/libcxx/include/__concepts/invocable.h:1-7, emscripten-source/system/lib/libcxx/include/__concepts/movable.h:1-7, emscripten-source/system/lib/libcxx/include/__concepts/predicate.h:1-7, emscripten-source/system/lib/libcxx/include/__concepts/regular.h:1-7, emscripten-source/system/lib/libcxx/include/__concepts/relation.h:1-7, emscripten-source/system/lib/libcxx/include/__concepts/same_as.h:1-7, emscripten-source/system/lib/libcxx/include/__concepts/semiregular.h:1-7, emscripten-source/system/lib/libcxx/include/__concepts/swappable.h:1-7, emscripten-source/system/lib/libcxx/include/__concepts/totally_ordered.h:1-7, emscripten-source/system/lib/libcxx/include/__condition_variable/condition_variable.h:1-7, emscripten-source/system/lib/libcxx/include/__debug_utils/randomize_range.h:1-7, emscripten-source/system/lib/libcxx/include/__debug_utils/sanitizers.h:1-7, emscripten-source/system/lib/libcxx/include/__debug_utils/strict_weak_ordering_check.h:1-7, emscripten-source/system/lib/libcxx/include/__exception/exception.h:1-7, emscripten-source/system/lib/libcxx/include/__exception/exception_ptr.h:1-7, emscripten-source/system/lib/libcxx/include/__exception/nested_exception.h:1-7, emscripten-source/system/lib/libcxx/include/__exception/operations.h:1-7, emscripten-source/system/lib/libcxx/include/__exception/terminate.h:1-7, emscripten-source/system/lib/libcxx/include/__functional/boyer_moore_searcher.h:1-7, emscripten-source/system/lib/libcxx/include/__functional/hash.h:1-7, emscripten-source/system/lib/libcxx/include/__functional/unary_function.h:1-7, emscripten-source/system/lib/libcxx/include/__fwd/bit_reference.h:1-7, emscripten-source/system/lib/libcxx/include/__fwd/fstream.h:1-7, emscripten-source/system/lib/libcxx/include/__fwd/ios.h:1-7, emscripten-source/system/lib/libcxx/include/__fwd/istream.h:1-7, emscripten-source/system/lib/libcxx/include/__fwd/map.h:1-7, emscripten-source/system/lib/libcxx/include/__fwd/memory_resource.h:1-7, emscripten-source/system/lib/libcxx/include/__fwd/ostream.h:1-7, emscripten-source/system/lib/libcxx/include/__fwd/set.h:1-7, emscripten-source/system/lib/libcxx/include/__fwd/sstream.h:1-7, emscripten-source/system/lib/libcxx/include/__fwd/streambuf.h:1-7, emscripten-source/system/lib/libcxx/include/__fwd/string.h:1-7, emscripten-source/system/lib/libcxx/include/__iterator/aliasing_iterator.h:1-7, emscripten-source/system/lib/libcxx/include/__iterator/cpp17_iterator_concepts.h:1-7, emscripten-source/system/lib/libcxx/include/__iterator/iterator_with_data.h:1-7, emscripten-source/system/lib/libcxx/include/__iterator/move_sentinel.h:1-7, emscripten-source/system/lib/libcxx/include/__iterator/product_iterator.h:1-7, emscripten-source/system/lib/libcxx/include/__iterator/segmented_iterator.h:1-7, emscripten-source/system/lib/libcxx/include/__locale_dir/check_grouping.h:1-7, emscripten-source/system/lib/libcxx/include/__locale_dir/get_c_locale.h:1-7, emscripten-source/system/lib/libcxx/include/__locale_dir/messages.h:1-7, emscripten-source/system/lib/libcxx/include/__locale_dir/money.h:1-7, emscripten-source/system/lib/libcxx/include/__locale_dir/num.h:1-7, emscripten-source/system/lib/libcxx/include/__locale_dir/pad_and_output.h:1-7, emscripten-source/system/lib/libcxx/include/__locale_dir/scan_keyword.h:1-7, emscripten-source/system/lib/libcxx/include/__locale_dir/time.h:1-7, emscripten-source/system/lib/libcxx/include/__locale_dir/wbuffer_convert.h:1-7, emscripten-source/system/lib/libcxx/include/__locale_dir/wstring_convert.h:1-7, emscripten-source/system/lib/libcxx/include/__math/abs.h:1-7, emscripten-source/system/lib/libcxx/include/__math/copysign.h:1-7, emscripten-source/system/lib/libcxx/include/__math/error_functions.h:1-7, emscripten-source/system/lib/libcxx/include/__math/exponential_functions.h:1-7, emscripten-source/system/lib/libcxx/include/__math/fdim.h:1-7, emscripten-source/system/lib/libcxx/include/__math/fma.h:1-7, emscripten-source/system/lib/libcxx/include/__math/gamma.h:1-7, emscripten-source/system/lib/libcxx/include/__math/hyperbolic_functions.h:1-7, emscripten-source/system/lib/libcxx/include/__math/hypot.h:1-7, emscripten-source/system/lib/libcxx/include/__math/inverse_hyperbolic_functions.h:1-7, emscripten-source/system/lib/libcxx/include/__math/inverse_trigonometric_functions.h:1-7, emscripten-source/system/lib/libcxx/include/__math/logarithms.h:1-7, emscripten-source/system/lib/libcxx/include/__math/min_max.h:1-7, emscripten-source/system/lib/libcxx/include/__math/modulo.h:1-7, emscripten-source/system/lib/libcxx/include/__math/remainder.h:1-7, emscripten-source/system/lib/libcxx/include/__math/roots.h:1-7, emscripten-source/system/lib/libcxx/include/__math/rounding_functions.h:1-7, emscripten-source/system/lib/libcxx/include/__math/traits.h:1-7, emscripten-source/system/lib/libcxx/include/__math/trigonometric_functions.h:1-7, emscripten-source/system/lib/libcxx/include/__memory/align.h:1-7, emscripten-source/system/lib/libcxx/include/__memory/allocate_at_least.h:1-7, emscripten-source/system/lib/libcxx/include/__memory/allocator_destructor.h:1-7, emscripten-source/system/lib/libcxx/include/__memory/destroy.h:1-7, emscripten-source/system/lib/libcxx/include/__memory/destruct_n.h:1-7, emscripten-source/system/lib/libcxx/include/__memory/noexcept_move_assign_container.h:1-7, emscripten-source/system/lib/libcxx/include/__memory/shared_count.h:1-7, emscripten-source/system/lib/libcxx/include/__memory/swap_allocator.h:1-7, emscripten-source/system/lib/libcxx/include/__memory/temp_value.h:1-7, emscripten-source/system/lib/libcxx/include/__memory/uses_allocator_construction.h:1-7, emscripten-source/system/lib/libcxx/include/__memory_resource/memory_resource.h:1-7, emscripten-source/system/lib/libcxx/include/__memory_resource/monotonic_buffer_resource.h:1-7, emscripten-source/system/lib/libcxx/include/__memory_resource/polymorphic_allocator.h:1-7, emscripten-source/system/lib/libcxx/include/__memory_resource/pool_options.h:1-7, emscripten-source/system/lib/libcxx/include/__memory_resource/synchronized_pool_resource.h:1-7, emscripten-source/system/lib/libcxx/include/__memory_resource/unsynchronized_pool_resource.h:1-7, emscripten-source/system/lib/libcxx/include/__mutex/lock_guard.h:1-7, emscripten-source/system/lib/libcxx/include/__mutex/mutex.h:1-7, emscripten-source/system/lib/libcxx/include/__mutex/once_flag.h:1-7, emscripten-source/system/lib/libcxx/include/__mutex/tag_types.h:1-7, emscripten-source/system/lib/libcxx/include/__mutex/unique_lock.h:1-7, emscripten-source/system/lib/libcxx/include/__new/align_val_t.h:1-7, emscripten-source/system/lib/libcxx/include/__new/allocate.h:1-7, emscripten-source/system/lib/libcxx/include/__new/destroying_delete_t.h:1-7, emscripten-source/system/lib/libcxx/include/__new/exceptions.h:1-7, emscripten-source/system/lib/libcxx/include/__new/global_new_delete.h:1-7, emscripten-source/system/lib/libcxx/include/__new/interference_size.h:1-7, emscripten-source/system/lib/libcxx/include/__new/launder.h:1-7, emscripten-source/system/lib/libcxx/include/__new/new_handler.h:1-7, emscripten-source/system/lib/libcxx/include/__new/nothrow_t.h:1-7, emscripten-source/system/lib/libcxx/include/__new/placement_new_delete.h:1-7, emscripten-source/system/lib/libcxx/include/__numeric/pstl.h:1-7, emscripten-source/system/lib/libcxx/include/__pstl/backend.h:1-7, emscripten-source/system/lib/libcxx/include/__pstl/backend_fwd.h:1-7, emscripten-source/system/lib/libcxx/include/__pstl/backends/default.h:1-7, emscripten-source/system/lib/libcxx/include/__pstl/backends/libdispatch.h:1-7, emscripten-source/system/lib/libcxx/include/__pstl/backends/std_thread.h:1-7, emscripten-source/system/lib/libcxx/include/__pstl/cpu_algos/any_of.h:1-7, emscripten-source/system/lib/libcxx/include/__pstl/cpu_algos/cpu_traits.h:1-7, emscripten-source/system/lib/libcxx/include/__pstl/cpu_algos/fill.h:1-7, emscripten-source/system/lib/libcxx/include/__pstl/cpu_algos/find_if.h:1-7, emscripten-source/system/lib/libcxx/include/__pstl/cpu_algos/for_each.h:1-7, emscripten-source/system/lib/libcxx/include/__pstl/cpu_algos/merge.h:1-7, emscripten-source/system/lib/libcxx/include/__pstl/cpu_algos/stable_sort.h:1-7, emscripten-source/system/lib/libcxx/include/__pstl/cpu_algos/transform.h:1-7, emscripten-source/system/lib/libcxx/include/__pstl/cpu_algos/transform_reduce.h:1-7, emscripten-source/system/lib/libcxx/include/__pstl/dispatch.h:1-7, emscripten-source/system/lib/libcxx/include/__pstl/handle_exception.h:1-7, emscripten-source/system/lib/libcxx/include/__random/bernoulli_distribution.h:1-7, emscripten-source/system/lib/libcxx/include/__random/binomial_distribution.h:1-7, emscripten-source/system/lib/libcxx/include/__random/cauchy_distribution.h:1-7, emscripten-source/system/lib/libcxx/include/__random/chi_squared_distribution.h:1-7, emscripten-source/system/lib/libcxx/include/__random/clamp_to_integral.h:1-7, emscripten-source/system/lib/libcxx/include/__random/default_random_engine.h:1-7, emscripten-source/system/lib/libcxx/include/__random/discard_block_engine.h:1-7, emscripten-source/system/lib/libcxx/include/__random/discrete_distribution.h:1-7, emscripten-source/system/lib/libcxx/include/__random/exponential_distribution.h:1-7, emscripten-source/system/lib/libcxx/include/__random/extreme_value_distribution.h:1-7, emscripten-source/system/lib/libcxx/include/__random/fisher_f_distribution.h:1-7, emscripten-source/system/lib/libcxx/include/__random/gamma_distribution.h:1-7, emscripten-source/system/lib/libcxx/include/__random/generate_canonical.h:1-7, emscripten-source/system/lib/libcxx/include/__random/geometric_distribution.h:1-7, emscripten-source/system/lib/libcxx/include/__random/independent_bits_engine.h:1-7, emscripten-source/system/lib/libcxx/include/__random/is_seed_sequence.h:1-7, emscripten-source/system/lib/libcxx/include/__random/is_valid.h:1-7, emscripten-source/system/lib/libcxx/include/__random/knuth_b.h:1-7, emscripten-source/system/lib/libcxx/include/__random/linear_congruential_engine.h:1-7, emscripten-source/system/lib/libcxx/include/__random/log2.h:1-7, emscripten-source/system/lib/libcxx/include/__random/lognormal_distribution.h:1-7, emscripten-source/system/lib/libcxx/include/__random/mersenne_twister_engine.h:1-7, emscripten-source/system/lib/libcxx/include/__random/negative_binomial_distribution.h:1-7, emscripten-source/system/lib/libcxx/include/__random/normal_distribution.h:1-7, emscripten-source/system/lib/libcxx/include/__random/piecewise_constant_distribution.h:1-7, emscripten-source/system/lib/libcxx/include/__random/piecewise_linear_distribution.h:1-7, emscripten-source/system/lib/libcxx/include/__random/poisson_distribution.h:1-7, emscripten-source/system/lib/libcxx/include/__random/random_device.h:1-7, emscripten-source/system/lib/libcxx/include/__random/ranlux.h:1-7, emscripten-source/system/lib/libcxx/include/__random/seed_seq.h:1-7, emscripten-source/system/lib/libcxx/include/__random/shuffle_order_engine.h:1-7, emscripten-source/system/lib/libcxx/include/__random/student_t_distribution.h:1-7, emscripten-source/system/lib/libcxx/include/__random/subtract_with_carry_engine.h:1-7, emscripten-source/system/lib/libcxx/include/__random/uniform_int_distribution.h:1-7, emscripten-source/system/lib/libcxx/include/__random/uniform_random_bit_generator.h:1-7, emscripten-source/system/lib/libcxx/include/__random/uniform_real_distribution.h:1-7, emscripten-source/system/lib/libcxx/include/__random/weibull_distribution.h:1-7, emscripten-source/system/lib/libcxx/include/__ranges/as_rvalue_view.h:1-7, emscripten-source/system/lib/libcxx/include/__string/char_traits.h:1-7, emscripten-source/system/lib/libcxx/include/__string/constexpr_c_functions.h:1-7, emscripten-source/system/lib/libcxx/include/__string/extern_template_lists.h:1-7, emscripten-source/system/lib/libcxx/include/__tuple/find_index.h:1-7, emscripten-source/system/lib/libcxx/include/__tuple/ignore.h:1-7, emscripten-source/system/lib/libcxx/include/__tuple/make_tuple_types.h:1-7, emscripten-source/system/lib/libcxx/include/__tuple/sfinae_helpers.h:1-7, emscripten-source/system/lib/libcxx/include/__tuple/tuple_element.h:1-7, emscripten-source/system/lib/libcxx/include/__tuple/tuple_indices.h:1-7, emscripten-source/system/lib/libcxx/include/__tuple/tuple_like.h:1-7, emscripten-source/system/lib/libcxx/include/__tuple/tuple_like_ext.h:1-7, emscripten-source/system/lib/libcxx/include/__tuple/tuple_like_no_subrange.h:1-7, emscripten-source/system/lib/libcxx/include/__tuple/tuple_size.h:1-7, emscripten-source/system/lib/libcxx/include/__tuple/tuple_types.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/add_cv_quals.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/add_pointer.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/add_reference.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/aligned_storage.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/aligned_union.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/alignment_of.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/can_extract_key.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/common_reference.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/common_type.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/conditional.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/conjunction.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/copy_cv.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/copy_cvref.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/datasizeof.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/decay.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/dependent_type.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/desugars_to.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/detected_or.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/disjunction.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/enable_if.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/extent.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/has_unique_object_representation.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/has_virtual_destructor.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/integer_traits.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/integral_constant.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/is_abstract.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/is_aggregate.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/is_allocator.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/is_always_bitcastable.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/is_arithmetic.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/is_array.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/is_assignable.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/is_base_of.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/is_bounded_array.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/is_callable.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/is_char_like_type.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/is_class.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/is_compound.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/is_const.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/is_constant_evaluated.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/is_constructible.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/is_convertible.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/is_core_convertible.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/is_destructible.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/is_empty.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/is_enum.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/is_equality_comparable.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/is_execution_policy.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/is_final.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/is_floating_point.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/is_function.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/is_fundamental.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/is_implicit_lifetime.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/is_implicitly_default_constructible.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/is_integral.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/is_literal_type.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/is_member_pointer.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/is_nothrow_assignable.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/is_nothrow_constructible.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/is_nothrow_destructible.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/is_null_pointer.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/is_object.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/is_pod.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/is_pointer.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/is_polymorphic.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/is_primary_template.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/is_reference.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/is_reference_wrapper.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/is_referenceable.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/is_replaceable.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/is_same.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/is_scalar.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/is_signed.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/is_standard_layout.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/is_swappable.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/is_trivial.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/is_trivially_assignable.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/is_trivially_constructible.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/is_trivially_copyable.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/is_trivially_destructible.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/is_trivially_lexicographically_comparable.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/is_trivially_relocatable.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/is_unbounded_array.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/is_union.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/is_unqualified.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/is_unsigned.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/is_valid_expansion.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/is_void.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/is_volatile.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/lazy.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/make_32_64_or_128_bit.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/make_const_lvalue_ref.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/make_signed.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/make_unsigned.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/maybe_const.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/nat.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/negation.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/promote.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/rank.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/reference_constructs_from_temporary.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/reference_converts_from_temporary.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/remove_all_extents.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/remove_const.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/remove_const_ref.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/remove_cv.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/remove_cvref.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/remove_extent.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/remove_pointer.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/remove_reference.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/remove_volatile.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/result_of.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/strip_signature.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/type_identity.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/type_list.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/underlying_type.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/unwrap_ref.h:1-7, emscripten-source/system/lib/libcxx/include/__type_traits/void_t.h:1-7, emscripten-source/system/lib/libcxx/include/__utility/as_const.h:1-7, emscripten-source/system/lib/libcxx/include/__utility/cmp.h:1-7, emscripten-source/system/lib/libcxx/include/__utility/convert_to_integral.h:1-7, emscripten-source/system/lib/libcxx/include/__utility/declval.h:1-7, emscripten-source/system/lib/libcxx/include/__utility/element_count.h:1-7, emscripten-source/system/lib/libcxx/include/__utility/empty.h:1-7, emscripten-source/system/lib/libcxx/include/__utility/exception_guard.h:1-7, emscripten-source/system/lib/libcxx/include/__utility/exchange.h:1-7, emscripten-source/system/lib/libcxx/include/__utility/in_place.h:1-7, emscripten-source/system/lib/libcxx/include/__utility/integer_sequence.h:1-7, emscripten-source/system/lib/libcxx/include/__utility/is_pointer_in_range.h:1-7, emscripten-source/system/lib/libcxx/include/__utility/is_valid_range.h:1-7, emscripten-source/system/lib/libcxx/include/__utility/no_destroy.h:1-7, emscripten-source/system/lib/libcxx/include/__utility/pair.h:1-7, emscripten-source/system/lib/libcxx/include/__utility/piecewise_construct.h:1-7, emscripten-source/system/lib/libcxx/include/__utility/priority_tag.h:1-7, emscripten-source/system/lib/libcxx/include/__utility/rel_ops.h:1-7, emscripten-source/system/lib/libcxx/include/__utility/swap.h:1-7, emscripten-source/system/lib/libcxx/include/__utility/unreachable.h:1-7, emscripten-source/system/lib/libcxx/include/__vector/comparison.h:1-7, emscripten-source/system/lib/libcxx/include/__vector/container_traits.h:1-7, emscripten-source/system/lib/libcxx/include/__vector/erase.h:1-7, emscripten-source/system/lib/libcxx/include/__vector/pmr.h:1-7, emscripten-source/system/lib/libcxx/include/__vector/swap.h:1-7, emscripten-source/system/lib/libcxx/include/__vector/vector.h:1-7, emscripten-source/system/lib/libcxx/include/__vector/vector_bool.h:1-7, emscripten-source/system/lib/libcxx/include/__vector/vector_bool_formatter.h:1-7, emscripten-source/system/lib/libcxxabi/include/__cxxabi_config.h:1-7, emscripten-source/system/lib/libcxxabi/include/cxxabi.h:1-7, emscripten-source/system/lib/openmp/include/omp.h:6-12
//===----------------------------------------------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//===----------------------------------------------------------------------===//

==== emscripten-source/system/lib/libcxx/include/__algorithm/lower_bound.h lines 50-58 sha256 c2464e43de17c7b2b863974e414a3d245d63c8d596a647d363211a5c2cca2102 ====
// One-sided binary search, aka meta binary search, has been in the public domain for decades, and has the general
// advantage of being \Omega(1) rather than the classic algorithm's \Omega(log(n)), with the downside of executing at
// most 2*log(n) comparisons vs the classic algorithm's exact log(n). There are two scenarios in which it really shines:
// the first one is when operating over non-random-access iterators, because the classic algorithm requires knowing the
// container's size upfront, which adds \Omega(n) iterator increments to the complexity. The second one is when you're
// traversing the container in order, trying to fast-forward to the next value: in that case, the classic algorithm
// would yield \Omega(n*log(n)) comparisons and, for non-random-access iterators, \Omega(n^2) iterator increments,
// whereas the one-sided version will yield O(n) operations on both counts, with a \Omega(log(n)) bound on the number of
// comparisons.

==== emscripten-source/system/lib/libcxx/include/__atomic/atomic_ref.h lines 1-15 sha256 713160bcaaa71d8b607e0828178e4412167c85f8ae9947e1da59cb513a104ecc ====
// -*- C++ -*-
//===----------------------------------------------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//                        Kokkos v. 4.0
//       Copyright (2022) National Technology & Engineering
//               Solutions of Sandia, LLC (NTESS).
//
// Under the terms of Contract DE-NA0003525 with NTESS,
// the U.S. Government retains certain rights in this software.
//
//===---------------------------------------------------------------------===//

==== emscripten-source/system/lib/libcxx/include/__chrono/exception.h lines 10-10 sha256 3f6ccf68caad9459e089ab649dcd5e456688538525f7c3a455b7eed0a89d995d ====
also in: emscripten-source/system/lib/libcxx/include/__chrono/leap_second.h:10-10, emscripten-source/system/lib/libcxx/include/__chrono/local_info.h:10-10, emscripten-source/system/lib/libcxx/include/__chrono/sys_info.h:10-10, emscripten-source/system/lib/libcxx/include/__chrono/time_zone.h:10-10, emscripten-source/system/lib/libcxx/include/__chrono/time_zone_link.h:10-10, emscripten-source/system/lib/libcxx/include/__chrono/tzdb.h:10-10, emscripten-source/system/lib/libcxx/include/__chrono/tzdb_list.h:10-10, emscripten-source/system/lib/libcxx/include/__chrono/zoned_time.h:10-10
// For information see https://libcxx.llvm.org/DesignDocs/TimeZone.html

==== emscripten-source/system/lib/libcxx/include/__config_site lines 1-2 sha256 07884cd6c9134ee45eebe3bbedda003b13baa2258eb1e4e1501cb0ec8909bbeb ====
// Set the LIBCPP ABI version 2 under emscripten so that we get nicely aligned string
// data and other nice fixes.

==== emscripten-source/system/lib/libcxx/include/__cstddef/byte.h lines 1-7 sha256 e4cf441f2c0f8a213df512e199504cb3801873ae8edc19c13dca72fba5751bf3 ====
also in: emscripten-source/system/lib/libcxx/include/__cstddef/max_align_t.h:1-7, emscripten-source/system/lib/libcxx/include/__cstddef/nullptr_t.h:1-7, emscripten-source/system/lib/libcxx/include/__cstddef/ptrdiff_t.h:1-7, emscripten-source/system/lib/libcxx/include/__cstddef/size_t.h:1-7, emscripten-source/system/lib/libcxx/include/__fwd/array.h:1-7, emscripten-source/system/lib/libcxx/include/__fwd/byte.h:1-7, emscripten-source/system/lib/libcxx/include/__fwd/complex.h:1-7, emscripten-source/system/lib/libcxx/include/__fwd/deque.h:1-7, emscripten-source/system/lib/libcxx/include/__fwd/functional.h:1-7, emscripten-source/system/lib/libcxx/include/__fwd/get.h:1-7, emscripten-source/system/lib/libcxx/include/__fwd/memory.h:1-7, emscripten-source/system/lib/libcxx/include/__fwd/pair.h:1-7, emscripten-source/system/lib/libcxx/include/__fwd/queue.h:1-7, emscripten-source/system/lib/libcxx/include/__fwd/stack.h:1-7, emscripten-source/system/lib/libcxx/include/__fwd/subrange.h:1-7, emscripten-source/system/lib/libcxx/include/__fwd/tuple.h:1-7, emscripten-source/system/lib/libcxx/include/__fwd/variant.h:1-7, emscripten-source/system/lib/libcxx/include/__fwd/vector.h:1-7, emscripten-source/system/lib/libcxx/include/__ostream/basic_ostream.h:1-7, emscripten-source/system/lib/libcxx/include/__ostream/print.h:1-7, emscripten-source/system/lib/libcxx/include/__ostream/put_character_sequence.h:1-7
//===---------------------------------------------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//===---------------------------------------------------------------------===//

==== emscripten-source/system/lib/libcxx/include/__filesystem/perms.h lines 23-26 sha256 8573f3fe15c3ac23503e490c5718595ed22ac14ac81cbbf69ada298a63263dd3 ====
// On Windows, these permission bits map to one single readonly flag per
// file, and the executable bit is always returned as set. When setting
// permissions, as long as the write bit is set for either owner, group or
// others, the readonly flag is cleared.

==== emscripten-source/system/lib/libcxx/include/__format/escaped_output_table.h lines 10-12 sha256 e8e2dd8cd8bde6dd6f3113ef7de7b561475f774edddde5cd08ec7485a9190ab9 ====
// WARNING, this entire header is generated by
// utils/generate_escaped_output_table.py
// DO NOT MODIFY!

==== emscripten-source/system/lib/libcxx/include/__format/escaped_output_table.h lines 14-59 sha256 a0b14ce5495a82579808a05f49af5c339fa3eb9be676423f6b1353dc72dbee95 ====
also in: emscripten-source/system/lib/libcxx/include/__format/extended_grapheme_cluster_table.h:14-59, emscripten-source/system/lib/libcxx/include/__format/indic_conjunct_break_table.h:14-59, emscripten-source/system/lib/libcxx/include/__format/width_estimation_table.h:14-59
// UNICODE, INC. LICENSE AGREEMENT - DATA FILES AND SOFTWARE
//
// See Terms of Use <https://www.unicode.org/copyright.html>
// for definitions of Unicode Inc.'s Data Files and Software.
//
// NOTICE TO USER: Carefully read the following legal agreement.
// BY DOWNLOADING, INSTALLING, COPYING OR OTHERWISE USING UNICODE INC.'S
// DATA FILES ("DATA FILES"), AND/OR SOFTWARE ("SOFTWARE"),
// YOU UNEQUIVOCALLY ACCEPT, AND AGREE TO BE BOUND BY, ALL OF THE
// TERMS AND CONDITIONS OF THIS AGREEMENT.
// IF YOU DO NOT AGREE, DO NOT DOWNLOAD, INSTALL, COPY, DISTRIBUTE OR USE
// THE DATA FILES OR SOFTWARE.
//
// COPYRIGHT AND PERMISSION NOTICE
//
// Copyright (c) 1991-2022 Unicode, Inc. All rights reserved.
// Distributed under the Terms of Use in https://www.unicode.org/copyright.html.
//
// Permission is hereby granted, free of charge, to any person obtaining
// a copy of the Unicode data files and any associated documentation
// (the "Data Files") or Unicode software and any associated documentation
// (the "Software") to deal in the Data Files or Software
// without restriction, including without limitation the rights to use,
// copy, modify, merge, publish, distribute, and/or sell copies of
// the Data Files or Software, and to permit persons to whom the Data Files
// or Software are furnished to do so, provided that either
// (a) this copyright and permission notice appear with all copies
// of the Data Files or Software, or
// (b) this copyright and permission notice appear in associated
// Documentation.
//
// THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF
// ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
// WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
// NONINFRINGEMENT OF THIRD PARTY RIGHTS.
// IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS
// NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL
// DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
// DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
// TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
// PERFORMANCE OF THE DATA FILES OR SOFTWARE.
//
// Except as contained in this notice, the name of a copyright holder
// shall not be used in advertising or otherwise to promote the sale,
// use or other dealings in these Data Files or Software without prior
// written authorization of the copyright holder.

==== emscripten-source/system/lib/libcxx/include/__format/escaped_output_table.h lines 80-111 sha256 4bf32ac44239f3e366a9241616479f45a3b2d4d476657fb2b04bbb744743ad8a ====
/// The entries of the characters to escape in format's debug string.
///
/// Contains the entries for [format.string.escaped]/2.2.1.2.1
///   CE is a Unicode encoding and C corresponds to a UCS scalar value whose
///   Unicode property General_Category has a value in the groups Separator (Z)
///   or Other (C), as described by table 12 of UAX #44
///
/// Separator (Z) consists of General_Category
/// - Space_Separator,
/// - Line_Separator,
/// - Paragraph_Separator.
///
/// Other (C) consists of General_Category
/// - Control,
/// - Format,
/// - Surrogate,
/// - Private_Use,
/// - Unassigned.
///
/// The data is generated from
/// - https://www.unicode.org/Public/UCD/latest/ucd/extracted/DerivedGeneralCategory.txt
///
/// The table is similar to the table
///  __extended_grapheme_custer_property_boundary::__entries
/// which explains the details of these classes. The only difference is this
/// table lacks a property, thus having more bits available for the size.
///
/// The data has 2 values:
/// - bits [0, 13] The size of the range, allowing 16384 elements.
/// - bits [14, 31] The lower bound code point of the range. The upper bound of
///   the range is lower bound + size. Note the code expects code units the fit
///   into 18 bits, instead of the 21 bits needed for the full Unicode range.

==== emscripten-source/system/lib/libcxx/include/__format/extended_grapheme_cluster_table.h lines 10-12 sha256 415bec3c8b5609ca4cf77886a77117ee8263f49eab24fdf1cbdb8c5f56ef0202 ====
// WARNING, this entire header is generated by
// utils/generate_extended_grapheme_cluster_table.py
// DO NOT MODIFY!

==== emscripten-source/system/lib/libcxx/include/__format/indic_conjunct_break_table.h lines 10-12 sha256 da2a40b50279eaff7fc425458e2bf338fe9d01d748696f494cd72ab6674ee352 ====
// WARNING, this entire header is generated by
// utils/generate_indic_conjunct_break_table.py
// DO NOT MODIFY!

==== emscripten-source/system/lib/libcxx/include/__format/width_estimation_table.h lines 10-12 sha256 1d155010f8a11953c3c87ea721ef45be99f9b19474ca68f3405e0724758cff3e ====
// WARNING, this entire header is generated by
// utils/generate_width_estimation_table.py
// DO NOT MODIFY!

==== emscripten-source/system/lib/libcxx/include/__format/write_escaped.h lines 112-115 sha256 e6f641761c4be3bc9075d9636bee2f58892bc3f0ae16cf88c82c41ceada6a790 ====
  // [format.string.escaped]/2.2.1.2.1
  //   CE is UTF-8, UTF-16, or UTF-32 and C corresponds to a Unicode scalar
  //   value whose Unicode property General_Category has a value in the groups
  //   Separator (Z) or Other (C), as described by UAX #44 of the Unicode Standard,

==== emscripten-source/system/lib/libcxx/include/__fwd/span.h lines 1-8 sha256 92c57f57c3ccf8bfeab9025047f5bb115b1855b54705301189af1f970789f45a ====
also in: emscripten-source/system/lib/libcxx/include/__fwd/string_view.h:1-8
// -*- C++ -*-
//===---------------------------------------------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//===---------------------------------------------------------------------===//

==== emscripten-source/system/lib/libcxx/include/__locale_dir/locale_base_api.h lines 1-7 sha256 6fb689b03b9b87545fb6152283e2cc01d02d0c5be5981e1f2dff01a385f084e5 ====
also in: emscripten-source/system/lib/libcxx/include/__locale_dir/support/apple.h:1-7, emscripten-source/system/lib/libcxx/include/__locale_dir/support/bsd_like.h:1-7, emscripten-source/system/lib/libcxx/include/__locale_dir/support/freebsd.h:1-7, emscripten-source/system/lib/libcxx/include/__locale_dir/support/fuchsia.h:1-7, emscripten-source/system/lib/libcxx/include/__locale_dir/support/linux.h:1-7, emscripten-source/system/lib/libcxx/include/__locale_dir/support/no_locale/characters.h:1-7, emscripten-source/system/lib/libcxx/include/__locale_dir/support/no_locale/strtonum.h:1-7, emscripten-source/system/lib/libcxx/include/__locale_dir/support/windows.h:1-7
//===-----------------------------------------------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//===----------------------------------------------------------------------===//

==== emscripten-source/system/lib/libcxx/include/__locale_dir/locale_base_api/android.h lines 1-8 sha256 9afc8cbc127e0aa19c9eb4d6a68c2db7dd6e04176f93f00f9407c7016517db4e ====
also in: emscripten-source/system/lib/libcxx/include/__locale_dir/locale_base_api/ibm.h:1-8, emscripten-source/system/lib/libcxx/include/__locale_dir/locale_base_api/openbsd.h:1-8
// -*- C++ -*-
//===-----------------------------------------------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//===----------------------------------------------------------------------===//

==== emscripten-source/system/lib/libcxx/include/__locale_dir/locale_base_api/bsd_locale_fallbacks.h lines 1-11 sha256 d2fd491b081bc87e2c4744f629b08fab5ef5e7e0ccaf10dae78366eee68feb6c ====
// -*- C++ -*-
//===----------------------------------------------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//===----------------------------------------------------------------------===//
// The BSDs have lots of *_l functions.  This file provides reimplementations
// of those functions for non-BSD platforms.
//===----------------------------------------------------------------------===//

==== emscripten-source/system/lib/libcxx/include/__locale_dir/locale_base_api/musl.h lines 1-15 sha256 ba9c213b5fdbb9712cd81c9b440da0725048c4d2d2bc2acfeb410f939b4f616c ====
// -*- C++ -*-
//===-----------------------------------------------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//===----------------------------------------------------------------------===//
// This adds support for the extended locale functions that are currently
// missing from the Musl C library.
//
// This only works when the specified locale is "C" or "POSIX", but that's
// about as good as we can do without implementing full xlocale support
// in Musl.
//===----------------------------------------------------------------------===//

==== emscripten-source/system/lib/libcxx/include/__support/xlocale/__posix_l_fallback.h lines 1-13 sha256 9b945eaf5cb51933e6798b2c518caabf42872ea066518208b66e6db98d3b2417 ====
// -*- C++ -*-
//===-----------------------------------------------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//===----------------------------------------------------------------------===//
// These are reimplementations of some extended locale functions ( *_l ) that
// are normally part of POSIX.  This shared implementation provides parts of the
// extended locale support for libc's that normally don't have any (like
// Android's bionic and Newlib).
//===----------------------------------------------------------------------===//

==== emscripten-source/system/lib/libcxx/include/__support/xlocale/__strtonum_fallback.h lines 1-13 sha256 33929d736511d269ff17a70a50308dda7081ed9ed84b40a159c13a4d397e51cd ====
// -*- C++ -*-
//===-----------------------------------------------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//===----------------------------------------------------------------------===//
// These are reimplementations of some extended locale functions ( *_l ) that
// aren't part of POSIX.  They are widely available though (GLIBC, BSD, maybe
// others).  The unifying aspect in this case is that all of these functions
// convert strings to some numeric type.
//===----------------------------------------------------------------------===//

==== emscripten-source/system/lib/libcxx/include/__system_error/errc.h lines 13-101 sha256 70457e9621f2ef08d9cdea949b74f475a262488ad938af8392e996048864fc28 ====
/*
    system_error synopsis

namespace std
{

enum class errc
{
    address_family_not_supported,       // EAFNOSUPPORT
    address_in_use,                     // EADDRINUSE
    address_not_available,              // EADDRNOTAVAIL
    already_connected,                  // EISCONN
    argument_list_too_long,             // E2BIG
    argument_out_of_domain,             // EDOM
    bad_address,                        // EFAULT
    bad_file_descriptor,                // EBADF
    bad_message,                        // EBADMSG
    broken_pipe,                        // EPIPE
    connection_aborted,                 // ECONNABORTED
    connection_already_in_progress,     // EALREADY
    connection_refused,                 // ECONNREFUSED
    connection_reset,                   // ECONNRESET
    cross_device_link,                  // EXDEV
    destination_address_required,       // EDESTADDRREQ
    device_or_resource_busy,            // EBUSY
    directory_not_empty,                // ENOTEMPTY
    executable_format_error,            // ENOEXEC
    file_exists,                        // EEXIST
    file_too_large,                     // EFBIG
    filename_too_long,                  // ENAMETOOLONG
    function_not_supported,             // ENOSYS
    host_unreachable,                   // EHOSTUNREACH
    identifier_removed,                 // EIDRM
    illegal_byte_sequence,              // EILSEQ
    inappropriate_io_control_operation, // ENOTTY
    interrupted,                        // EINTR
    invalid_argument,                   // EINVAL
    invalid_seek,                       // ESPIPE
    io_error,                           // EIO
    is_a_directory,                     // EISDIR
    message_size,                       // EMSGSIZE
    network_down,                       // ENETDOWN
    network_reset,                      // ENETRESET
    network_unreachable,                // ENETUNREACH
    no_buffer_space,                    // ENOBUFS
    no_child_process,                   // ECHILD
    no_link,                            // ENOLINK
    no_lock_available,                  // ENOLCK
    no_message_available,               // ENODATA         // deprecated
    no_message,                         // ENOMSG
    no_protocol_option,                 // ENOPROTOOPT
    no_space_on_device,                 // ENOSPC
    no_stream_resources,                // ENOSR           // deprecated
    no_such_device_or_address,          // ENXIO
    no_such_device,                     // ENODEV
    no_such_file_or_directory,          // ENOENT
    no_such_process,                    // ESRCH
    not_a_directory,                    // ENOTDIR
    not_a_socket,                       // ENOTSOCK
    not_a_stream,                       // ENOSTR          // deprecated
    not_connected,                      // ENOTCONN
    not_enough_memory,                  // ENOMEM
    not_supported,                      // ENOTSUP
    operation_canceled,                 // ECANCELED
    operation_in_progress,              // EINPROGRESS
    operation_not_permitted,            // EPERM
    operation_not_supported,            // EOPNOTSUPP
    operation_would_block,              // EWOULDBLOCK
    owner_dead,                         // EOWNERDEAD
    permission_denied,                  // EACCES
    protocol_error,                     // EPROTO
    protocol_not_supported,             // EPROTONOSUPPORT
    read_only_file_system,              // EROFS
    resource_deadlock_would_occur,      // EDEADLK
    resource_unavailable_try_again,     // EAGAIN
    result_out_of_range,                // ERANGE
    state_not_recoverable,              // ENOTRECOVERABLE
    stream_timeout,                     // ETIME           // deprecated
    text_file_busy,                     // ETXTBSY
    timed_out,                          // ETIMEDOUT
    too_many_files_open_in_system,      // ENFILE
    too_many_files_open,                // EMFILE
    too_many_links,                     // EMLINK
    too_many_symbolic_link_levels,      // ELOOP
    value_too_large,                    // EOVERFLOW
    wrong_protocol_type                 // EPROTOTYPE
};

*/

==== emscripten-source/system/lib/libcxx/include/bit lines 1-8 sha256 92a7033eb546a871af4c9f30ebde307f7b5129ddea63bb48d3587bb3f5535612 ====
also in: emscripten-source/system/lib/libcxx/include/span:1-8
// -*- C++ -*-
//===----------------------------------------------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//===---------------------------------------------------------------------===//

==== emscripten-source/system/lib/libcxx/include/cassert lines 10-17 sha256 60503628681e3928bb52ead773e3c974b163d192cbb6c8a79b0e0a621b892695 ====
/*
    cassert synopsis

Macros:

    assert

*/

==== emscripten-source/system/lib/libcxx/include/filesystem lines 13-534 sha256 876dbc4f1582135f53acaf0d8f755a3d48ff011315ee1b3e9c45686f28f161d2 ====
/*
    filesystem synopsis

    namespace std::filesystem {

    // `class path` from http://eel.is/c++draft/fs.class.path.general#6
    class path {
      public:
        using value_type  = see below;
        using string_type = basic_string<value_type>;
        static constexpr value_type preferred_separator = see below;

        enum format;

        path() noexcept;
        path(const path& p);
        path(path&& p) noexcept;
        path(string_type&& source, format fmt = auto_format);
        template<class Source>
          path(const Source& source, format fmt = auto_format);
        template<class InputIterator>
          path(InputIterator first, InputIterator last, format fmt = auto_format);
        template<class Source>
          path(const Source& source, const locale& loc, format fmt = auto_format);
        template<class InputIterator>
          path(InputIterator first, InputIterator last, const locale& loc, format fmt = auto_format);
        ~path();

        path& operator=(const path& p);
        path& operator=(path&& p) noexcept;
        path& operator=(string_type&& source);
        path& assign(string_type&& source);
        template<class Source>
          path& operator=(const Source& source);
        template<class Source>
          path& assign(const Source& source);
        template<class InputIterator>
          path& assign(InputIterator first, InputIterator last);

        path& operator/=(const path& p);
        template<class Source>
          path& operator/=(const Source& source);
        template<class Source>
          path& append(const Source& source);
        template<class InputIterator>
          path& append(InputIterator first, InputIterator last);

        path& operator+=(const path& x);
        path& operator+=(const string_type& x);
        path& operator+=(basic_string_view<value_type> x);
        path& operator+=(const value_type* x);
        path& operator+=(value_type x);
        template<class Source>
          path& operator+=(const Source& x);
        template<class EcharT>
          path& operator+=(EcharT x);
        template<class Source>
          path& concat(const Source& x);
        template<class InputIterator>
          path& concat(InputIterator first, InputIterator last);

        void  clear() noexcept;
        path& make_preferred();
        path& remove_filename();
        path& replace_filename(const path& replacement);
        path& replace_extension(const path& replacement = path());
        void  swap(path& rhs) noexcept;

        friend bool operator==(const path& lhs, const path& rhs) noexcept;
        friend bool operator!=(const path& lhs, const path& rhs) noexcept;             // removed in C++20
        friend bool operator< (const path& lhs, const path& rhs) noexcept;             // removed in C++20
        friend bool operator<=(const path& lhs, const path& rhs) noexcept;             // removed in C++20
        friend bool operator> (const path& lhs, const path& rhs) noexcept;             // removed in C++20
        friend bool operator>=(const path& lhs, const path& rhs) noexcept;             // removed in C++20
        friend strong_ordering operator<=>(const path& lhs, const path& rhs) noexcept; // C++20

        friend path operator/(const path& lhs, const path& rhs);

        const string_type& native() const noexcept;
        const value_type*  c_str() const noexcept;
        operator string_type() const;

        template<class EcharT, class traits = char_traits<EcharT>,
                 class Allocator = allocator<EcharT>>
          basic_string<EcharT, traits, Allocator>
            string(const Allocator& a = Allocator()) const;
        std::string    string() const;
        std::wstring   wstring() const;
        std::u8string  u8string() const;
        std::u16string u16string() const;
        std::u32string u32string() const;

        template<class EcharT, class traits = char_traits<EcharT>,
                 class Allocator = allocator<EcharT>>
          basic_string<EcharT, traits, Allocator>
            generic_string(const Allocator& a = Allocator()) const;
        std::string    generic_string() const;
        std::wstring   generic_wstring() const;
        std::u8string  generic_u8string() const;
        std::u16string generic_u16string() const;
        std::u32string generic_u32string() const;

        int compare(const path& p) const noexcept;
        int compare(const string_type& s) const;
        int compare(basic_string_view<value_type> s) const;
        int compare(const value_type* s) const;

        path root_name() const;
        path root_directory() const;
        path root_path() const;
        path relative_path() const;
        path parent_path() const;
        path filename() const;
        path stem() const;
        path extension() const;

        [[nodiscard]] bool empty() const noexcept;
        bool has_root_name() const;
        bool has_root_directory() const;
        bool has_root_path() const;
        bool has_relative_path() const;
        bool has_parent_path() const;
        bool has_filename() const;
        bool has_stem() const;
        bool has_extension() const;
        bool is_absolute() const;
        bool is_relative() const;

        path lexically_normal() const;
        path lexically_relative(const path& base) const;
        path lexically_proximate(const path& base) const;

        class iterator;
        using const_iterator = iterator;

        iterator begin() const;
        iterator end() const;

        template<class charT, class traits>
          friend basic_ostream<charT, traits>&
            operator<<(basic_ostream<charT, traits>& os, const path& p);
        template<class charT, class traits>
          friend basic_istream<charT, traits>&
            operator>>(basic_istream<charT, traits>& is, path& p);
    };

    void swap(path& lhs, path& rhs) noexcept;
    size_t hash_value(const path& p) noexcept;

    // [fs.path.hash], hash support
    template<> struct hash<filesystem::path>;

    template <class Source>
      path u8path(const Source& source);
    template <class InputIterator>
      path u8path(InputIterator first, InputIterator last);

    class filesystem_error;

    class directory_entry {
    public:
      directory_entry() noexcept = default;
      directory_entry(const directory_entry&) = default;
      directory_entry(directory_entry&&) noexcept = default;
      explicit directory_entry(const filesystem::path& p);
      directory_entry(const filesystem::path& p, error_code& ec);
      ~directory_entry();

      directory_entry& operator=(const directory_entry&) = default;
      directory_entry& operator=(directory_entry&&) noexcept = default;

      void assign(const filesystem::path& p);
      void assign(const filesystem::path& p, error_code& ec);
      void replace_filename(const filesystem::path& p);
      void replace_filename(const filesystem::path& p, error_code& ec);
      void refresh();
      void refresh(error_code& ec) noexcept;

      const filesystem::path& path() const noexcept;
      operator const filesystem::path&() const noexcept;
      bool exists() const;
      bool exists(error_code& ec) const noexcept;
      bool is_block_file() const;
      bool is_block_file(error_code& ec) const noexcept;
      bool is_character_file() const;
      bool is_character_file(error_code& ec) const noexcept;
      bool is_directory() const;
      bool is_directory(error_code& ec) const noexcept;
      bool is_fifo() const;
      bool is_fifo(error_code& ec) const noexcept;
      bool is_other() const;
      bool is_other(error_code& ec) const noexcept;
      bool is_regular_file() const;
      bool is_regular_file(error_code& ec) const noexcept;
      bool is_socket() const;
      bool is_socket(error_code& ec) const noexcept;
      bool is_symlink() const;
      bool is_symlink(error_code& ec) const noexcept;
      uintmax_t file_size() const;
      uintmax_t file_size(error_code& ec) const noexcept;
      uintmax_t hard_link_count() const;
      uintmax_t hard_link_count(error_code& ec) const noexcept;
      file_time_type last_write_time() const;
      file_time_type last_write_time(error_code& ec) const noexcept;
      file_status status() const;
      file_status status(error_code& ec) const noexcept;
      file_status symlink_status() const;
      file_status symlink_status(error_code& ec) const noexcept;

      bool operator==(const directory_entry& rhs) const noexcept;
      bool operator!=(const directory_entry& rhs) const noexcept;             // removed  in C++20
      bool operator< (const directory_entry& rhs) const noexcept;             // removed  in C++20
      bool operator<=(const directory_entry& rhs) const noexcept;             // removed  in C++20
      bool operator> (const directory_entry& rhs) const noexcept;             // removed  in C++20
      bool operator>=(const directory_entry& rhs) const noexcept;             // removed  in C++20
      strong_ordering operator<=>(const directory_entry& rhs) const noexcept; // since C++20

      template<class charT, class traits>
        friend basic_ostream<charT, traits>&
          operator<<(basic_ostream<charT, traits>& os, const directory_entry& d);

    private:
      filesystem::path pathobject;        // exposition only
      friend class directory_iterator;    // exposition only
    };

  class directory_iterator {
  public:
    using iterator_category = input_iterator_tag;
    using value_type        = directory_entry;
    using difference_type   = ptrdiff_t;
    using pointer           = const directory_entry*;
    using reference         = const directory_entry&;

    // [fs.dir.itr.members], member functions
    directory_iterator() noexcept;
    explicit directory_iterator(const path& p);
    directory_iterator(const path& p, directory_options options);
    directory_iterator(const path& p, error_code& ec);
    directory_iterator(const path& p, directory_options options,
                       error_code& ec);
    directory_iterator(const directory_iterator& rhs);
    directory_iterator(directory_iterator&& rhs) noexcept;
    ~directory_iterator();

    directory_iterator& operator=(const directory_iterator& rhs);
    directory_iterator& operator=(directory_iterator&& rhs) noexcept;

    const directory_entry& operator*() const;
    const directory_entry* operator->() const;
    directory_iterator&    operator++();
    directory_iterator&    increment(error_code& ec);

    bool operator==(default_sentinel_t) const noexcept {          // since C++20
      return *this == directory_iterator();
    }

    // other members as required by [input.iterators], input iterators
  };

    // enable directory_iterator range-based for statements
    directory_iterator begin(directory_iterator iter) noexcept;
    directory_iterator end(directory_iterator) noexcept;

class recursive_directory_iterator {
  public:
    using iterator_category = input_iterator_tag;
    using value_type        = directory_entry;
    using difference_type   = ptrdiff_t;
    using pointer           = const directory_entry*;
    using reference         = const directory_entry&;

    // [fs.rec.dir.itr.members], constructors and destructor
    recursive_directory_iterator() noexcept;
    explicit recursive_directory_iterator(const path& p);
    recursive_directory_iterator(const path& p, directory_options options);
    recursive_directory_iterator(const path& p, directory_options options,
                                 error_code& ec);
    recursive_directory_iterator(const path& p, error_code& ec);
    recursive_directory_iterator(const recursive_directory_iterator& rhs);
    recursive_directory_iterator(recursive_directory_iterator&& rhs) noexcept;
    ~recursive_directory_iterator();

    // [fs.rec.dir.itr.members], observers
    directory_options  options() const;
    int                depth() const;
    bool               recursion_pending() const;

    const directory_entry& operator*() const;
    const directory_entry* operator->() const;

    // [fs.rec.dir.itr.members], modifiers
    recursive_directory_iterator&
      operator=(const recursive_directory_iterator& rhs);
    recursive_directory_iterator&
      operator=(recursive_directory_iterator&& rhs) noexcept;

    recursive_directory_iterator& operator++();
    recursive_directory_iterator& increment(error_code& ec);

    void pop();
    void pop(error_code& ec);
    void disable_recursion_pending();

    bool operator==(default_sentinel_t) const noexcept {          // since C++20
      return *this == recursive_directory_iterator();
    }

    // other members as required by [input.iterators], input iterators
  };

    // enable recursive_directory_iterator range-based for statements
    recursive_directory_iterator begin(recursive_directory_iterator iter) noexcept;
    recursive_directory_iterator end(recursive_directory_iterator) noexcept;

  class file_status {
  public:
    // [fs.file.status.cons], constructors and destructor
    file_status() noexcept : file_status(file_type::none) {}
    explicit file_status(file_type ft,
                         perms prms = perms::unknown) noexcept;
    file_status(const file_status&) noexcept = default;
    file_status(file_status&&) noexcept = default;
    ~file_status();

    // assignments
    file_status& operator=(const file_status&) noexcept = default;
    file_status& operator=(file_status&&) noexcept = default;

    // [fs.file.status.mods], modifiers
    void       type(file_type ft) noexcept;
    void       permissions(perms prms) noexcept;

    // [fs.file.status.obs], observers
    file_type  type() const noexcept;
    perms      permissions() const noexcept;

    friend bool operator==(const file_status& lhs, const file_status& rhs) noexcept
      { return lhs.type() == rhs.type() && lhs.permissions() == rhs.permissions(); } // C++20
  };

    struct space_info
    {
      uintmax_t capacity;
      uintmax_t free;
      uintmax_t available;

      friend bool operator==(const space_info&, const space_info&) = default; // C++20
    };

    enum class file_type;
    enum class perms;
    enum class perm_options;
    enum class copy_options;
    enum class directory_options;

    typedef chrono::time_point<trivial-clock>  file_time_type;

    // operational functions

    path absolute(const path& p);
    path absolute(const path& p, error_code &ec);

    path canonical(const path& p);
    path canonical(const path& p, error_code& ec);

    void copy(const path& from, const path& to);
    void copy(const path& from, const path& to, error_code& ec);
    void copy(const path& from, const path& to, copy_options options);
    void copy(const path& from, const path& to, copy_options options,
                   error_code& ec);

    bool copy_file(const path& from, const path& to);
    bool copy_file(const path& from, const path& to, error_code& ec);
    bool copy_file(const path& from, const path& to, copy_options option);
    bool copy_file(const path& from, const path& to, copy_options option,
                           error_code& ec);

    void copy_symlink(const path& existing_symlink, const path& new_symlink);
    void copy_symlink(const path& existing_symlink, const path& new_symlink,
                              error_code& ec) noexcept;

    bool create_directories(const path& p);
    bool create_directories(const path& p, error_code& ec);

    bool create_directory(const path& p);
    bool create_directory(const path& p, error_code& ec) noexcept;

    bool create_directory(const path& p, const path& attributes);
    bool create_directory(const path& p, const path& attributes,
                                  error_code& ec) noexcept;

    void create_directory_symlink(const path& to, const path& new_symlink);
    void create_directory_symlink(const path& to, const path& new_symlink,
                                          error_code& ec) noexcept;

    void create_hard_link(const path& to, const path& new_hard_link);
    void create_hard_link(const path& to, const path& new_hard_link,
                                  error_code& ec) noexcept;

    void create_symlink(const path& to, const path& new_symlink);
    void create_symlink(const path& to, const path& new_symlink,
                                error_code& ec) noexcept;

    path current_path();
    path current_path(error_code& ec);
    void current_path(const path& p);
    void current_path(const path& p, error_code& ec) noexcept;

    bool exists(file_status s) noexcept;
    bool exists(const path& p);
    bool exists(const path& p, error_code& ec) noexcept;

    bool equivalent(const path& p1, const path& p2);
    bool equivalent(const path& p1, const path& p2, error_code& ec) noexcept;

    uintmax_t    file_size(const path& p);
    uintmax_t    file_size(const path& p, error_code& ec) noexcept;

    uintmax_t    hard_link_count(const path& p);
    uintmax_t    hard_link_count(const path& p, error_code& ec) noexcept;

    bool is_block_file(file_status s) noexcept;
    bool is_block_file(const path& p);
    bool is_block_file(const path& p, error_code& ec) noexcept;

    bool is_character_file(file_status s) noexcept;
    bool is_character_file(const path& p);
    bool is_character_file(const path& p, error_code& ec) noexcept;

    bool is_directory(file_status s) noexcept;
    bool is_directory(const path& p);
    bool is_directory(const path& p, error_code& ec) noexcept;

    bool is_empty(const path& p);
    bool is_empty(const path& p, error_code& ec) noexcept;

    bool is_fifo(file_status s) noexcept;
    bool is_fifo(const path& p);
    bool is_fifo(const path& p, error_code& ec) noexcept;

    bool is_other(file_status s) noexcept;
    bool is_other(const path& p);
    bool is_other(const path& p, error_code& ec) noexcept;

    bool is_regular_file(file_status s) noexcept;
    bool is_regular_file(const path& p);
    bool is_regular_file(const path& p, error_code& ec) noexcept;

    bool is_socket(file_status s) noexcept;
    bool is_socket(const path& p);
    bool is_socket(const path& p, error_code& ec) noexcept;

    bool is_symlink(file_status s) noexcept;
    bool is_symlink(const path& p);
    bool is_symlink(const path& p, error_code& ec) noexcept;

    file_time_type  last_write_time(const path& p);
    file_time_type  last_write_time(const path& p, error_code& ec) noexcept;
    void last_write_time(const path& p, file_time_type new_time);
    void last_write_time(const path& p, file_time_type new_time,
                                 error_code& ec) noexcept;

    void permissions(const path& p, perms prms,
                     perm_options opts=perm_options::replace);
    void permissions(const path& p, perms prms, error_code& ec) noexcept;
    void permissions(const path& p, perms prms, perm_options opts,
                     error_code& ec);

    path proximate(const path& p, error_code& ec);
    path proximate(const path& p, const path& base = current_path());
    path proximate(const path& p, const path& base, error_code &ec);

    path read_symlink(const path& p);
    path read_symlink(const path& p, error_code& ec);

    path relative(const path& p, error_code& ec);
    path relative(const path& p, const path& base=current_path());
    path relative(const path& p, const path& base, error_code& ec);

    bool remove(const path& p);
    bool remove(const path& p, error_code& ec) noexcept;

    uintmax_t    remove_all(const path& p);
    uintmax_t    remove_all(const path& p, error_code& ec);

    void rename(const path& from, const path& to);
    void rename(const path& from, const path& to, error_code& ec) noexcept;

    void resize_file(const path& p, uintmax_t size);
    void resize_file(const path& p, uintmax_t size, error_code& ec) noexcept;

    space_info   space(const path& p);
    space_info   space(const path& p, error_code& ec) noexcept;

    file_status  status(const path& p);
    file_status  status(const path& p, error_code& ec) noexcept;

    bool status_known(file_status s) noexcept;

    file_status  symlink_status(const path& p);
    file_status  symlink_status(const path& p, error_code& ec) noexcept;

    path temp_directory_path();
    path temp_directory_path(error_code& ec);

    path weakly_canonical(path const& p);
    path weakly_canonical(path const& p, error_code& ec);

} // namespace std::filesystem

template <>
inline constexpr bool std::ranges::enable_borrowed_range<std::filesystem::directory_iterator> = true;
template <>
inline constexpr bool std::ranges::enable_borrowed_range<std::filesystem::recursive_directory_iterator> = true;

template <>
inline constexpr bool std::ranges::enable_view<std::filesystem::directory_iterator> = true;
template <>
inline constexpr bool std::ranges::enable_view<std::filesystem::recursive_directory_iterator> = true;

*/

==== emscripten-source/system/lib/libcxx/include/iterator lines 13-680 sha256 24bdedd36ff98ff8c008b9762b39538165ae0fbf8f614fb06660d75b369c5d46 ====
/*
    iterator synopsis

#include <concepts>

namespace std
{
template<class> struct incrementable_traits;       // since C++20
template<class T>
  using iter_difference_t = see below;             // since C++20

template<class> struct indirectly_readable_traits; // since C++20
template<class T>
  using iter_value_t = see below;                  // since C++20

template<class Iterator>
struct iterator_traits;

template<class T>
  requires is_object_v<T>                    // since C++20
struct iterator_traits<T*>;

template<dereferenceable T>
  using iter_reference_t = decltype(*declval<T&>());

namespace ranges::inline unspecified {
    inline constexpr unspecified iter_move = unspecified; // since C++20, nodiscard as an extension
}}

template<dereferenceable T>
  requires ...
using iter_rvalue_reference_t = decltype(ranges::iter_move(declval<T&>())); // since C++20

// [iterator.concepts], iterator concepts
// [iterator.concept.readable], concept indirectly_readable
template<class In>
  concept indirectly_readable = see below;                      // since C++20

template<indirectly_readable T>
  using iter_common_reference_t =
    common_reference_t<iter_reference_t<T>, iter_value_t<T>&>;  // since C++20

// [iterator.concept.writable], concept indirectly_writable
template<class Out, class T>
  concept indirectly_writable = see below;                // since C++20

// [iterator.concept.winc], concept weakly_incrementable
template<class I>
  concept weakly_incrementable = see below;                // since C++20

// [iterator.concept.inc], concept incrementable
template<class I>
  concept incrementable = see below;                       // since C++20

// [iterator.concept.iterator], concept input_or_output_iterator
  template<class I>
    concept input_or_output_iterator = see below;          // since C++20

// [iterator.concept.sentinel], concept sentinel_for
template<class S, class I>
  concept sentinel_for = see below;                        // since C++20

// [iterator.concept.sizedsentinel], concept sized_sentinel_for
template<class S, class I>
  inline constexpr bool disable_sized_sentinel_for = false;

template<class S, class I>
  concept sized_sentinel_for = see below;

// [iterator.concept.input], concept input_iterator
template<class I>
  concept input_iterator = see below;                      // since C++20

// [iterator.concept.output], concept output_iterator
template<class I, class T>
  concept output_iterator = see below;                     // since C++20

// [iterator.concept.forward], concept forward_iterator
template<class I>
  concept forward_iterator = see below;                    // since C++20

// [iterator.concept.bidir], concept bidirectional_iterator
template<class I>
  concept bidirectional_iterator = see below;              // since C++20

// [iterator.concept.random.access], concept random_access_iterator
template<class I>
  concept random_access_iterator = see below;              // since C++20

// [indirectcallable]
// [indirectcallable.indirectinvocable]
template<class F, class I>
  concept indirectly_unary_invocable = see below;          // since C++20

template<class F, class I>
  concept indirectly_regular_unary_invocable = see below;  // since C++20

template<class F, class I>
  concept indirect_unary_predicate = see below;            // since C++20

template<class F, class I1, class I2>
  concept indirect_binary_predicate = see below;           // since C++20

template<class F, class I1, class I2 = I1>
  concept indirect_equivalence_relation = see below;       // since C++20

template<class F, class I1, class I2 = I1>
  concept indirect_strict_weak_order = see below;          // since C++20

template<class F, class... Is>
  using indirect_result_t = see below;                     // since C++20

// [projected], projected
template<indirectly_readable I, indirectly_regular_unary_invocable<I> Proj>
  struct projected;                                        // since C++20

template<weakly_incrementable I, indirectly_regular_unary_invocable<I> Proj>
  struct incrementable_traits<projected<I, Proj>>;         // since C++20

// [alg.req.ind.move], concept indirectly_movable
template<class In, class Out>
  concept indirectly_movable = see below;                  // since C++20

template<class In, class Out>
  concept indirectly_movable_storable = see below;         // since C++20

// [alg.req.ind.copy], concept indirectly_copyable
template<class In, class Out>
  concept indirectly_copyable = see below;                 // since C++20

template<class In, class Out>
  concept indirectly_copyable_storable = see below;        // since C++20

// [alg.req.ind.swap], concept indirectly_swappable
template<class I1, class I2 = I1>
  concept indirectly_swappable = see below;                // since C++20

template<class I1, class I2, class R, class P1 = identity,
         class P2 = identity>
  concept indirectly_comparable =
    indirect_binary_predicate<R, projected<I1, P1>, projected<I2, P2>>; // since C++20

// [alg.req.permutable], concept permutable
template<class I>
  concept permutable = see below;                          // since C++20

 // [alg.req.mergeable], concept mergeable
template<class I1, class I2, class Out,
    class R = ranges::less, class P1 = identity, class P2 = identity>
  concept mergeable = see below;                           // since C++20

// [alg.req.sortable], concept sortable
template<class I, class R = ranges::less, class P = identity>
  concept sortable = see below;                            // since C++20

template<input_or_output_iterator I, sentinel_for<I> S>
  requires (!same_as<I, S> && copyable<I>)
class common_iterator;                                     // since C++20

template<class Category, class T, class Distance = ptrdiff_t,
         class Pointer = T*, class Reference = T&>
struct iterator                                            // deprecated in C++17
{
    typedef T         value_type;
    typedef Distance  difference_type;
    typedef Pointer   pointer;
    typedef Reference reference;
    typedef Category  iterator_category;
};

struct input_iterator_tag  {};
struct output_iterator_tag {};
struct forward_iterator_tag       : public input_iterator_tag         {};
struct bidirectional_iterator_tag : public forward_iterator_tag       {};
struct random_access_iterator_tag : public bidirectional_iterator_tag {};
struct contiguous_iterator_tag    : public random_access_iterator_tag {};

// 27.4.3, iterator operations
template <class InputIterator, class Distance>  // constexpr in C++17
  constexpr void advance(InputIterator& i, Distance n);

template <class InputIterator>  // constexpr in C++17
  constexpr typename iterator_traits<InputIterator>::difference_type
    distance(InputIterator first, InputIterator last);

template <class InputIterator>  // constexpr in C++17
  constexpr InputIterator next(InputIterator x,
typename iterator_traits<InputIterator>::difference_type n = 1);

template <class BidirectionalIterator>  // constexpr in C++17
  constexpr BidirectionalIterator prev(BidirectionalIterator x,
    typename iterator_traits<BidirectionalIterator>::difference_type n = 1);

// [range.iter.ops], range iterator operations
namespace ranges {
  // [range.iter.op.advance], ranges::advance
  template<input_or_output_iterator I>
    constexpr void advance(I& i, iter_difference_t<I> n);                          // since C++20
  template<input_or_output_iterator I, sentinel_for<I> S>
    constexpr void advance(I& i, S bound);                                         // since C++20
  template<input_or_output_iterator I, sentinel_for<I> S>
    constexpr iter_difference_t<I> advance(I& i, iter_difference_t<I> n, S bound); // since C++20
}

template <class Iterator>
class reverse_iterator
    : public iterator<typename iterator_traits<Iterator>::iterator_category, // until C++17
                      typename iterator_traits<Iterator>::value_type,
                      typename iterator_traits<Iterator>::difference_type,
                      typename iterator_traits<Iterator>::pointer,
                      typename iterator_traits<Iterator>::reference>
{
protected:
    Iterator current;
public:
    using iterator_type     = Iterator;
    using iterator_concept  = see below; // since C++20
    using iterator_category = typename iterator_traits<Iterator>::iterator_category; // since C++17, until C++20
    using iterator_category = see below; // since C++20
    using value_type        = typename iterator_traits<Iterator>::value_type; // since C++17, until C++20
    using value_type        = iter_value_t<Iterator>; // since C++20
    using difference_type   = typename iterator_traits<Iterator>::difference_type; // until C++20
    using difference_type   = iter_difference_t<Iterator>; // since C++20
    using pointer           = typename iterator_traits<Iterator>::pointer;
    using reference         = typename iterator_traits<Iterator>::reference; // until C++20
    using reference         = iter_reference_t<Iterator>; // since C++20

    constexpr reverse_iterator();
    constexpr explicit reverse_iterator(Iterator x);
    template <class U> constexpr reverse_iterator(const reverse_iterator<U>& u);
    template <class U> constexpr reverse_iterator& operator=(const reverse_iterator<U>& u);
    constexpr Iterator base() const;
    constexpr reference operator*() const;
    constexpr pointer   operator->() const; // until C++20
    constexpr pointer   operator->() const requires see below; // since C++20
    constexpr reverse_iterator& operator++();
    constexpr reverse_iterator  operator++(int);
    constexpr reverse_iterator& operator--();
    constexpr reverse_iterator  operator--(int);
    constexpr reverse_iterator  operator+ (difference_type n) const;
    constexpr reverse_iterator& operator+=(difference_type n);
    constexpr reverse_iterator  operator- (difference_type n) const;
    constexpr reverse_iterator& operator-=(difference_type n);
    constexpr unspecified       operator[](difference_type n) const;

    friend constexpr iter_rvalue_reference_t<Iterator>
      iter_move(const reverse_iterator& i) noexcept(see below);
    template<indirectly_swappable<Iterator> Iterator2>
      friend constexpr void
        iter_swap(const reverse_iterator& x,
                  const reverse_iterator<Iterator2>& y) noexcept(see below);
};

template <class Iterator1, class Iterator2>
constexpr bool                          // constexpr in C++17
operator==(const reverse_iterator<Iterator1>& x, const reverse_iterator<Iterator2>& y);

template <class Iterator1, class Iterator2>
constexpr bool                          // constexpr in C++17
operator!=(const reverse_iterator<Iterator1>& x, const reverse_iterator<Iterator2>& y);

template <class Iterator1, class Iterator2>
constexpr bool                          // constexpr in C++17
operator<(const reverse_iterator<Iterator1>& x, const reverse_iterator<Iterator2>& y);

template <class Iterator1, class Iterator2>
constexpr bool                          // constexpr in C++17
operator>(const reverse_iterator<Iterator1>& x, const reverse_iterator<Iterator2>& y);

template <class Iterator1, class Iterator2>
constexpr bool                          // constexpr in C++17
operator<=(const reverse_iterator<Iterator1>& x, const reverse_iterator<Iterator2>& y);

template <class Iterator1, class Iterator2>
constexpr bool                          // constexpr in C++17
operator>=(const reverse_iterator<Iterator1>& x, const reverse_iterator<Iterator2>& y);

template<class Iterator1, three_way_comparable_with<Iterator1> Iterator2>
  constexpr compare_three_way_result_t<Iterator1, Iterator2>
    operator<=>(const reverse_iterator<Iterator1>& x,
                const reverse_iterator<Iterator2>& y);

template <class Iterator1, class Iterator2>
constexpr auto
operator-(const reverse_iterator<Iterator1>& x, const reverse_iterator<Iterator2>& y)
-> decltype(__y.base() - __x.base());   // constexpr in C++17

template <class Iterator>
constexpr reverse_iterator<Iterator>
operator+(typename reverse_iterator<Iterator>::difference_type n,
          const reverse_iterator<Iterator>& x);   // constexpr in C++17

template <class Iterator>
constexpr reverse_iterator<Iterator> make_reverse_iterator(Iterator i); // C++14, constexpr in C++17

template<class Iterator1, class Iterator2>
    requires (!sized_sentinel_for<Iterator1, Iterator2>)
  inline constexpr bool disable_sized_sentinel_for<reverse_iterator<Iterator1>,
                                                   reverse_iterator<Iterator2>> = true;

template <class Container>
class back_insert_iterator
    : public iterator<output_iterator_tag, void, void, void, void> // until C++17
{
protected:
    Container* container;
public:
    typedef Container                   container_type;
    typedef void                        value_type;
    typedef void                        difference_type; // until C++20
    typedef ptrdiff_t                   difference_type; // since C++20
    typedef void                        reference;
    typedef void                        pointer;

    explicit back_insert_iterator(Container& x);  // constexpr in C++20
    back_insert_iterator& operator=(const typename Container::value_type& value);  // constexpr in C++20
    back_insert_iterator& operator*();  // constexpr in C++20
    back_insert_iterator& operator++();  // constexpr in C++20
    back_insert_iterator  operator++(int);  // constexpr in C++20
};

template <class Container> back_insert_iterator<Container> back_inserter(Container& x);  // constexpr in C++20

template <class Container>
class front_insert_iterator
    : public iterator<output_iterator_tag, void, void, void, void> // until C++17
{
protected:
    Container* container;
public:
    typedef Container                    container_type;
    typedef void                         value_type;
    typedef void                         difference_type; // until C++20
    typedef ptrdiff_t                    difference_type; // since C++20
    typedef void                         reference;
    typedef void                         pointer;

    explicit front_insert_iterator(Container& x);  // constexpr in C++20
    front_insert_iterator& operator=(const typename Container::value_type& value);  // constexpr in C++20
    front_insert_iterator& operator*();  // constexpr in C++20
    front_insert_iterator& operator++();  // constexpr in C++20
    front_insert_iterator  operator++(int);  // constexpr in C++20
};

template <class Container> front_insert_iterator<Container> front_inserter(Container& x);  // constexpr in C++20

template <class Container>
class insert_iterator
    : public iterator<output_iterator_tag, void, void, void, void> // until C++17
{
protected:
    Container* container;
    typename Container::iterator iter;
public:
    typedef Container              container_type;
    typedef void                   value_type;
    typedef void                   difference_type; // until C++20
    typedef ptrdiff_t              difference_type; // since C++20
    typedef void                   reference;
    typedef void                   pointer;

    insert_iterator(Container& x, typename Container::iterator i);  // constexpr in C++20
    insert_iterator& operator=(const typename Container::value_type& value);  // constexpr in C++20
    insert_iterator& operator*();  // constexpr in C++20
    insert_iterator& operator++();  // constexpr in C++20
    insert_iterator& operator++(int);  // constexpr in C++20
};

template <class Container>
insert_iterator<Container> inserter(Container& x, typename Container::iterator i);  // until C++20
template <class Container>
constexpr insert_iterator<Container> inserter(Container& x, ranges::iterator_t<Container> i);  // since C++20

template <class Iterator>
class move_iterator {
public:
    using iterator_type     = Iterator;
    using iterator_concept  = see below; // From C++20
    using iterator_category = see below; // not always present starting from C++20
    using value_type        = iter_value_t<Iterator>; // Until C++20, iterator_traits<Iterator>::value_type
    using difference_type   = iter_difference_t<Iterator>; // Until C++20, iterator_traits<Iterator>::difference_type;
    using pointer           = Iterator;
    using reference         = iter_rvalue_reference_t<Iterator>; // Until C++20, value_type&&

    constexpr move_iterator();  // all the constexprs are in C++17
    constexpr explicit move_iterator(Iterator i);
    template <class U>
      constexpr move_iterator(const move_iterator<U>& u);
    template <class U>
      constexpr move_iterator& operator=(const move_iterator<U>& u);

    constexpr iterator_type base() const; // Until C++20
    constexpr const Iterator& base() const & noexcept; // From C++20
    constexpr Iterator base() &&; // From C++20

    constexpr reference operator*() const;
    constexpr pointer operator->() const; // Deprecated in C++20
    constexpr move_iterator& operator++();
    constexpr auto operator++(int); // Return type was move_iterator until C++20
    constexpr move_iterator& operator--();
    constexpr move_iterator operator--(int);
    constexpr move_iterator operator+(difference_type n) const;
    constexpr move_iterator& operator+=(difference_type n);
    constexpr move_iterator operator-(difference_type n) const;
    constexpr move_iterator& operator-=(difference_type n);
    constexpr reference operator[](difference_type n) const; // Return type unspecified until C++20

    template<sentinel_for<Iterator> S>
      friend constexpr bool
        operator==(const move_iterator& x, const move_sentinel<S>& y); // Since C++20
    template<sized_sentinel_for<Iterator> S>
      friend constexpr iter_difference_t<Iterator>
        operator-(const move_sentinel<S>& x, const move_iterator& y); // Since C++20
    template<sized_sentinel_for<Iterator> S>
      friend constexpr iter_difference_t<Iterator>
        operator-(const move_iterator& x, const move_sentinel<S>& y); // Since C++20
    friend constexpr iter_rvalue_reference_t<Iterator>
      iter_move(const move_iterator& i)
        noexcept(noexcept(ranges::iter_move(i.current))); // Since C++20
    template<indirectly_swappable<Iterator> Iterator2>
      friend constexpr void
        iter_swap(const move_iterator& x, const move_iterator<Iterator2>& y)
          noexcept(noexcept(ranges::iter_swap(x.current, y.current))); // Since C++20

private:
    Iterator current; // exposition only
};

template <class Iterator1, class Iterator2>
constexpr bool   // constexpr in C++17
operator==(const move_iterator<Iterator1>& x, const move_iterator<Iterator2>& y);

template <class Iterator1, class Iterator2>
constexpr bool   // constexpr in C++17
operator!=(const move_iterator<Iterator1>& x, const move_iterator<Iterator2>& y);

template <class Iterator1, class Iterator2>
constexpr bool   // constexpr in C++17
operator<(const move_iterator<Iterator1>& x, const move_iterator<Iterator2>& y);

template <class Iterator1, class Iterator2>
constexpr bool   // constexpr in C++17
operator<=(const move_iterator<Iterator1>& x, const move_iterator<Iterator2>& y);

template <class Iterator1, class Iterator2>
constexpr bool   // constexpr in C++17
operator>(const move_iterator<Iterator1>& x, const move_iterator<Iterator2>& y);

template <class Iterator1, class Iterator2>
constexpr bool   // constexpr in C++17
operator>=(const move_iterator<Iterator1>& x, const move_iterator<Iterator2>& y);

template <class Iterator1, class Iterator2>
constexpr auto   // constexpr in C++17
operator-(const move_iterator<Iterator1>& x,
          const move_iterator<Iterator2>& y) -> decltype(x.base() - y.base());

template <class Iterator>
constexpr move_iterator<Iterator> operator+(   // constexpr in C++17
            typename move_iterator<Iterator>::difference_type n,
            const move_iterator<Iterator>& x);

template <class Iterator>   // constexpr in C++17
constexpr  move_iterator<Iterator> make_move_iterator(const Iterator& i);

template<class Iterator1, class Iterator2>
    requires (!sized_sentinel_for<Iterator1, Iterator2>)
  inline constexpr bool disable_sized_sentinel_for<move_iterator<Iterator1>,    // since C++20
                                                    move_iterator<Iterator2>> = true;

template<semiregular S>
class move_sentinel {
public:
  constexpr move_sentinel();
  constexpr explicit move_sentinel(S s);
  template<class S2>
    requires convertible_to<const S2&, S>
      constexpr move_sentinel(const move_sentinel<S2>& s);
  template<class S2>
    requires assignable_from<S&, const S2&>
      constexpr move_sentinel& operator=(const move_sentinel<S2>& s);

  constexpr S base() const;
private:
  S last;     // exposition only
};

// [default.sentinel], default sentinel
struct default_sentinel_t;
inline constexpr default_sentinel_t default_sentinel{};

// [iterators.counted], counted iterators
template<input_or_output_iterator I> class counted_iterator;

template<input_iterator I>
  requires see below
  struct iterator_traits<counted_iterator<I>>;

// [unreachable.sentinel], unreachable sentinel
struct unreachable_sentinel_t;
inline constexpr unreachable_sentinel_t unreachable_sentinel{};

template <class T, class charT = char, class traits = char_traits<charT>, class Distance = ptrdiff_t>
class istream_iterator
    : public iterator<input_iterator_tag, T, Distance, const T*, const T&> // until C++17
{
public:
    typedef input_iterator_tag           iterator_category;
    typedef T                            value_type;
    typedef Distance                     difference_type;
    typedef const T*                     pointer;
    typedef const T&                     reference;

    typedef charT                        char_type;
    typedef traits                       traits_type;
    typedef basic_istream<charT, traits> istream_type;

    istream_iterator(); // constexpr since C++11
    constexpr istream_iterator(default_sentinel_t); // since C++20
    istream_iterator(istream_type& s);
    constexpr istream_iterator(const istream_iterator& x) noexcept(see below);
    ~istream_iterator();

    const T& operator*() const;
    const T* operator->() const;
    istream_iterator& operator++();
    istream_iterator  operator++(int);
    friend bool operator==(const istream_iterator& i, default_sentinel_t); // since C++20
};

template <class T, class charT, class traits, class Distance>
bool operator==(const istream_iterator<T,charT,traits,Distance>& x,
                const istream_iterator<T,charT,traits,Distance>& y);
template <class T, class charT, class traits, class Distance>
bool operator!=(const istream_iterator<T,charT,traits,Distance>& x,
                const istream_iterator<T,charT,traits,Distance>& y); // until C++20

template <class T, class charT = char, class traits = char_traits<charT> >
class ostream_iterator
    : public iterator<output_iterator_tag, void, void, void, void> // until C++17
{
public:
    typedef output_iterator_tag         iterator_category;
    typedef void                        value_type;
    typedef void                        difference_type; // until C++20
    typedef ptrdiff_t                   difference_type; // since C++20
    typedef void                        pointer;
    typedef void                        reference;

    typedef charT char_type;
    typedef traits traits_type;
    typedef basic_ostream<charT,traits> ostream_type;

    ostream_iterator(ostream_type& s);
    ostream_iterator(ostream_type& s, const charT* delimiter);
    ostream_iterator(const ostream_iterator& x);
    ~ostream_iterator();
    ostream_iterator& operator=(const T& value);

    ostream_iterator& operator*();
    ostream_iterator& operator++();
    ostream_iterator& operator++(int);
};

template<class charT, class traits = char_traits<charT> >
class istreambuf_iterator
    : public iterator<input_iterator_tag, charT, traits::off_type, unspecified, charT> // until C++17
{
public:
    typedef input_iterator_tag              iterator_category;
    typedef charT                           value_type;
    typedef traits::off_type                difference_type;
    typedef unspecified                     pointer;
    typedef charT                           reference;

    typedef charT                           char_type;
    typedef traits                          traits_type;
    typedef traits::int_type                int_type;
    typedef basic_streambuf<charT, traits>  streambuf_type;
    typedef basic_istream<charT, traits>    istream_type;

    istreambuf_iterator() noexcept; // constexpr since C++11
    constexpr istreambuf_iterator(default_sentinel_t) noexcept; // since C++20
    istreambuf_iterator(istream_type& s) noexcept;
    istreambuf_iterator(streambuf_type* s) noexcept;
    istreambuf_iterator(a-private-type) noexcept;

    charT                operator*() const;
    pointer operator->() const;
    istreambuf_iterator& operator++();
    a-private-type       operator++(int);

    bool equal(const istreambuf_iterator& b) const;
    friend bool operator==(const istreambuf_iterator& i, default_sentinel_t s); // since C++20
};

template <class charT, class traits>
bool operator==(const istreambuf_iterator<charT,traits>& a,
                const istreambuf_iterator<charT,traits>& b);
template <class charT, class traits>
bool operator!=(const istreambuf_iterator<charT,traits>& a,
                const istreambuf_iterator<charT,traits>& b); // until C++20

template <class charT, class traits = char_traits<charT> >
class ostreambuf_iterator
    : public iterator<output_iterator_tag, void, void, void, void> // until C++17
{
public:
    typedef output_iterator_tag            iterator_category;
    typedef void                           value_type;
    typedef void                           difference_type; // until C++20
    typedef ptrdiff_t                      difference_type; // since C++20
    typedef void                           pointer;
    typedef void                           reference;

    typedef charT                          char_type;
    typedef traits                         traits_type;
    typedef basic_streambuf<charT, traits> streambuf_type;
    typedef basic_ostream<charT, traits>   ostream_type;

    ostreambuf_iterator(ostream_type& s) noexcept;
    ostreambuf_iterator(streambuf_type* s) noexcept;
    ostreambuf_iterator& operator=(charT c);
    ostreambuf_iterator& operator*();
    ostreambuf_iterator& operator++();
    ostreambuf_iterator& operator++(int);
    bool failed() const noexcept;
};

template <class C> constexpr auto begin(C& c) -> decltype(c.begin());                   // constexpr since C++17
template <class C> constexpr auto begin(const C& c) -> decltype(c.begin());             // constexpr since C++17
template <class C> constexpr auto end(C& c) -> decltype(c.end());                       // constexpr since C++17
template <class C> constexpr auto end(const C& c) -> decltype(c.end());                 // constexpr since C++17
template <class T, size_t N> constexpr T* begin(T (&array)[N]) noexcept;
template <class T, size_t N> constexpr T* end(T (&array)[N]) noexcept;

template <class C> constexpr auto cbegin(const C& c) noexcept(see-below) -> decltype(std::begin(c)); // C++14
template <class C> constexpr auto cend(const C& c) noexcept(see-below) -> decltype(std::end(c));     // C++14
template <class C> constexpr auto rbegin(C& c) -> decltype(c.rbegin());                 // C++14, constexpr since C++17
template <class C> constexpr auto rbegin(const C& c) -> decltype(c.rbegin());           // C++14, constexpr since C++17
template <class C> constexpr auto rend(C& c) -> decltype(c.rend());                     // C++14, constexpr since C++17
template <class C> constexpr auto rend(const C& c) -> decltype(c.rend());               // C++14, constexpr since C++17
template <class E> constexpr reverse_iterator<const E*> rbegin(initializer_list<E> il); // C++14, constexpr since C++17
template <class E> constexpr reverse_iterator<const E*> rend(initializer_list<E> il);   // C++14, constexpr since C++17
template <class T, size_t N> constexpr reverse_iterator<T*> rbegin(T (&array)[N]);      // C++14, constexpr since C++17
template <class T, size_t N> constexpr reverse_iterator<T*> rend(T (&array)[N]);        // C++14, constexpr since C++17
template <class C> constexpr auto crbegin(const C& c) -> decltype(std::rbegin(c));      // C++14, constexpr since C++17
template <class C> constexpr auto crend(const C& c) -> decltype(std::rend(c));          // C++14, constexpr since C++17

// 24.8, container access:
template <class C> constexpr auto size(const C& c) -> decltype(c.size());         // C++17
template <class T, size_t N> constexpr size_t size(const T (&array)[N]) noexcept; // C++17

template <class C> constexpr auto ssize(const C& c)
    -> common_type_t<ptrdiff_t, make_signed_t<decltype(c.size())>>;                    // C++20
template <class T, ptrdiff_t> constexpr ptrdiff_t ssize(const T (&array)[N]) noexcept; // C++20

template <class C> constexpr auto empty(const C& c) -> decltype(c.empty());       // C++17
template <class T, size_t N> constexpr bool empty(const T (&array)[N]) noexcept;  // C++17
template <class E> constexpr bool empty(initializer_list<E> il) noexcept;         // C++17
template <class C> constexpr auto data(C& c) -> decltype(c.data());               // C++17
template <class C> constexpr auto data(const C& c) -> decltype(c.data());         // C++17
template <class T, size_t N> constexpr T* data(T (&array)[N]) noexcept;           // C++17
template <class E> constexpr const E* data(initializer_list<E> il) noexcept;      // C++17

}  // std

*/

==== emscripten-source/system/lib/libcxx/include/stddef.h lines 10-25 sha256 40b5d5a06b690e4e99272ea67f6b975a775bcb138ef0d0fda9843d31f2b808f5 ====
/*
    stddef.h synopsis

Macros:

    offsetof(type,member-designator)
    NULL

Types:

    ptrdiff_t
    size_t
    max_align_t // C++11
    nullptr_t

*/

==== emscripten-source/system/lib/libcxx/include/stdio.h lines 10-88 sha256 6a7f16f58b25558666111b8d29d1babc88504db6a698c1124bd26a77a9c853ca ====
/*
    stdio.h synopsis

Macros:

    BUFSIZ
    EOF
    FILENAME_MAX
    FOPEN_MAX
    L_tmpnam
    NULL
    SEEK_CUR
    SEEK_END
    SEEK_SET
    TMP_MAX
    _IOFBF
    _IOLBF
    _IONBF
    stderr
    stdin
    stdout

Types:

FILE
fpos_t
size_t

int remove(const char* filename);
int rename(const char* old, const char* new);
FILE* tmpfile(void);
char* tmpnam(char* s);
int fclose(FILE* stream);
int fflush(FILE* stream);
FILE* fopen(const char* restrict filename, const char* restrict mode);
FILE* freopen(const char* restrict filename, const char * restrict mode,
              FILE * restrict stream);
void setbuf(FILE* restrict stream, char* restrict buf);
int setvbuf(FILE* restrict stream, char* restrict buf, int mode, size_t size);
int fprintf(FILE* restrict stream, const char* restrict format, ...);
int fscanf(FILE* restrict stream, const char * restrict format, ...);
int printf(const char* restrict format, ...);
int scanf(const char* restrict format, ...);
int snprintf(char* restrict s, size_t n, const char* restrict format, ...);    // C99
int sprintf(char* restrict s, const char* restrict format, ...);
int sscanf(const char* restrict s, const char* restrict format, ...);
int vfprintf(FILE* restrict stream, const char* restrict format, va_list arg);
int vfscanf(FILE* restrict stream, const char* restrict format, va_list arg);  // C99
int vprintf(const char* restrict format, va_list arg);
int vscanf(const char* restrict format, va_list arg);                          // C99
int vsnprintf(char* restrict s, size_t n, const char* restrict format,         // C99
              va_list arg);
int vsprintf(char* restrict s, const char* restrict format, va_list arg);
int vsscanf(const char* restrict s, const char* restrict format, va_list arg); // C99
int fgetc(FILE* stream);
char* fgets(char* restrict s, int n, FILE* restrict stream);
int fputc(int c, FILE* stream);
int fputs(const char* restrict s, FILE* restrict stream);
int getc(FILE* stream);
int getchar(void);
char* gets(char* s);  // removed in C++14
int putc(int c, FILE* stream);
int putchar(int c);
int puts(const char* s);
int ungetc(int c, FILE* stream);
size_t fread(void* restrict ptr, size_t size, size_t nmemb,
             FILE* restrict stream);
size_t fwrite(const void* restrict ptr, size_t size, size_t nmemb,
              FILE* restrict stream);
int fgetpos(FILE* restrict stream, fpos_t* restrict pos);
int fseek(FILE* stream, long offset, int whence);
int fsetpos(FILE*stream, const fpos_t* pos);
long ftell(FILE* stream);
void rewind(FILE* stream);
void clearerr(FILE* stream);
int feof(FILE* stream);
int ferror(FILE* stream);
void perror(const char* s);
*/

==== emscripten-source/system/lib/libcxx/include/stdlib.h lines 10-74 sha256 d39338606336ccd9c8733a5c818c397f8f3f3509f63f0ccab9a829f79189437b ====
/*
    stdlib.h synopsis

Macros:

    EXIT_FAILURE
    EXIT_SUCCESS
    MB_CUR_MAX
    NULL
    RAND_MAX

Types:

    size_t
    div_t
    ldiv_t
    lldiv_t                                                               // C99

double    atof (const char* nptr);
int       atoi (const char* nptr);
long      atol (const char* nptr);
long long atoll(const char* nptr);                                        // C99
double             strtod  (const char* restrict nptr, char** restrict endptr);
float              strtof  (const char* restrict nptr, char** restrict endptr); // C99
long double        strtold (const char* restrict nptr, char** restrict endptr); // C99
long               strtol  (const char* restrict nptr, char** restrict endptr, int base);
long long          strtoll (const char* restrict nptr, char** restrict endptr, int base); // C99
unsigned long      strtoul (const char* restrict nptr, char** restrict endptr, int base);
unsigned long long strtoull(const char* restrict nptr, char** restrict endptr, int base); // C99
int rand(void);
void srand(unsigned int seed);
void* calloc(size_t nmemb, size_t size);
void free(void* ptr);
void* malloc(size_t size);
void* realloc(void* ptr, size_t size);
void abort(void);
int atexit(void (*func)(void));
void exit(int status);
void _Exit(int status);
char* getenv(const char* name);
int system(const char* string);
void* bsearch(const void* key, const void* base, size_t nmemb, size_t size,
              int (*compar)(const void *, const void *));
void qsort(void* base, size_t nmemb, size_t size,
           int (*compar)(const void *, const void *));
int         abs(      int j);
long        abs(     long j);
long long   abs(long long j);                                             // C++0X
long       labs(     long j);
long long llabs(long long j);                                             // C99
div_t     div(      int numer,       int denom);
ldiv_t    div(     long numer,      long denom);
lldiv_t   div(long long numer, long long denom);                          // C++0X
ldiv_t   ldiv(     long numer,      long denom);
lldiv_t lldiv(long long numer, long long denom);                          // C99
int mblen(const char* s, size_t n);
int mbtowc(wchar_t* restrict pwc, const char* restrict s, size_t n);
int wctomb(char* s, wchar_t wchar);
size_t mbstowcs(wchar_t* restrict pwcs, const char* restrict s, size_t n);
size_t wcstombs(char* restrict s, const wchar_t* restrict pwcs, size_t n);
int at_quick_exit(void (*func)(void))                                     // C++11
void quick_exit(int status);                                              // C++11
void *aligned_alloc(size_t alignment, size_t size);                       // C11

*/

==== emscripten-source/system/lib/libcxx/include/wchar.h lines 10-95 sha256 9fd6a8d67b57a6e55e150b1a345efc11950fa3419f7513d894b22b4f8de3fe49 ====
/*
    wchar.h synopsis

Macros:

    NULL
    WCHAR_MAX
    WCHAR_MIN
    WEOF

Types:

    mbstate_t
    size_t
    tm
    wint_t

int fwprintf(FILE* restrict stream, const wchar_t* restrict format, ...);
int fwscanf(FILE* restrict stream, const wchar_t* restrict format, ...);
int swprintf(wchar_t* restrict s, size_t n, const wchar_t* restrict format, ...);
int swscanf(const wchar_t* restrict s, const wchar_t* restrict format, ...);
int vfwprintf(FILE* restrict stream, const wchar_t* restrict format, va_list arg);
int vfwscanf(FILE* restrict stream, const wchar_t* restrict format, va_list arg);  // C99
int vswprintf(wchar_t* restrict s, size_t n, const wchar_t* restrict format, va_list arg);
int vswscanf(const wchar_t* restrict s, const wchar_t* restrict format, va_list arg);  // C99
int vwprintf(const wchar_t* restrict format, va_list arg);
int vwscanf(const wchar_t* restrict format, va_list arg);  // C99
int wprintf(const wchar_t* restrict format, ...);
int wscanf(const wchar_t* restrict format, ...);
wint_t fgetwc(FILE* stream);
wchar_t* fgetws(wchar_t* restrict s, int n, FILE* restrict stream);
wint_t fputwc(wchar_t c, FILE* stream);
int fputws(const wchar_t* restrict s, FILE* restrict stream);
int fwide(FILE* stream, int mode);
wint_t getwc(FILE* stream);
wint_t getwchar();
wint_t putwc(wchar_t c, FILE* stream);
wint_t putwchar(wchar_t c);
wint_t ungetwc(wint_t c, FILE* stream);
double wcstod(const wchar_t* restrict nptr, wchar_t** restrict endptr);
float wcstof(const wchar_t* restrict nptr, wchar_t** restrict endptr);         // C99
long double wcstold(const wchar_t* restrict nptr, wchar_t** restrict endptr);  // C99
long wcstol(const wchar_t* restrict nptr, wchar_t** restrict endptr, int base);
long long wcstoll(const wchar_t* restrict nptr, wchar_t** restrict endptr, int base);  // C99
unsigned long wcstoul(const wchar_t* restrict nptr, wchar_t** restrict endptr, int base);
unsigned long long wcstoull(const wchar_t* restrict nptr, wchar_t** restrict endptr, int base);  // C99
wchar_t* wcscpy(wchar_t* restrict s1, const wchar_t* restrict s2);
wchar_t* wcsncpy(wchar_t* restrict s1, const wchar_t* restrict s2, size_t n);
wchar_t* wcscat(wchar_t* restrict s1, const wchar_t* restrict s2);
wchar_t* wcsncat(wchar_t* restrict s1, const wchar_t* restrict s2, size_t n);
int wcscmp(const wchar_t* s1, const wchar_t* s2);
int wcscoll(const wchar_t* s1, const wchar_t* s2);
int wcsncmp(const wchar_t* s1, const wchar_t* s2, size_t n);
size_t wcsxfrm(wchar_t* restrict s1, const wchar_t* restrict s2, size_t n);
const wchar_t* wcschr(const wchar_t* s, wchar_t c);
      wchar_t* wcschr(      wchar_t* s, wchar_t c);
size_t wcscspn(const wchar_t* s1, const wchar_t* s2);
size_t wcslen(const wchar_t* s);
const wchar_t* wcspbrk(const wchar_t* s1, const wchar_t* s2);
      wchar_t* wcspbrk(      wchar_t* s1, const wchar_t* s2);
const wchar_t* wcsrchr(const wchar_t* s, wchar_t c);
      wchar_t* wcsrchr(      wchar_t* s, wchar_t c);
size_t wcsspn(const wchar_t* s1, const wchar_t* s2);
const wchar_t* wcsstr(const wchar_t* s1, const wchar_t* s2);
      wchar_t* wcsstr(      wchar_t* s1, const wchar_t* s2);
wchar_t* wcstok(wchar_t* restrict s1, const wchar_t* restrict s2, wchar_t** restrict ptr);
const wchar_t* wmemchr(const wchar_t* s, wchar_t c, size_t n);
      wchar_t* wmemchr(      wchar_t* s, wchar_t c, size_t n);
int wmemcmp(wchar_t* restrict s1, const wchar_t* restrict s2, size_t n);
wchar_t* wmemcpy(wchar_t* restrict s1, const wchar_t* restrict s2, size_t n);
wchar_t* wmemmove(wchar_t* s1, const wchar_t* s2, size_t n);
wchar_t* wmemset(wchar_t* s, wchar_t c, size_t n);
size_t wcsftime(wchar_t* restrict s, size_t maxsize, const wchar_t* restrict format,
                const tm* restrict timeptr);
wint_t btowc(int c);
int wctob(wint_t c);
int mbsinit(const mbstate_t* ps);
size_t mbrlen(const char* restrict s, size_t n, mbstate_t* restrict ps);
size_t mbrtowc(wchar_t* restrict pwc, const char* restrict s, size_t n, mbstate_t* restrict ps);
size_t wcrtomb(char* restrict s, wchar_t wc, mbstate_t* restrict ps);
size_t mbsrtowcs(wchar_t* restrict dst, const char** restrict src, size_t len,
                 mbstate_t* restrict ps);
size_t wcsrtombs(char* restrict dst, const wchar_t** restrict src, size_t len,
                 mbstate_t* restrict ps);

*/

==== emscripten-source/system/lib/mimalloc/include/mimalloc-new-delete.h lines 1-6 sha256 fd5aeee42c0e71c14651e8c2da0979c07032f5bdcae14f842c81ece70e8454e4 ====
/* ----------------------------------------------------------------------------
Copyright (c) 2018-2020 Microsoft Research, Daan Leijen
This is free software; you can redistribute it and/or modify it under the
terms of the MIT license. A copy of the license can be found in the file
"LICENSE" at the root of this distribution.
-----------------------------------------------------------------------------*/

==== emscripten-source/system/lib/mimalloc/include/mimalloc.h lines 1-6 sha256 706dd1a4768452a3d5eb0a617b7ad7970ad5ffcb409df295ed6dea23022fdbc1 ====
/* ----------------------------------------------------------------------------
Copyright (c) 2018-2026, Microsoft Research, Daan Leijen
This is free software; you can redistribute it and/or modify it under the
terms of the MIT license. A copy of the license can be found in the file
"LICENSE" at the root of this distribution.
-----------------------------------------------------------------------------*/

==== emscripten-source/system/lib/openmp/include/omp.h lines 1-3 sha256 af871dfab3abb6af605167760fde79d3e2cf7557f98811fa3c1cefaae83a3f56 ====
/*
 * include/omp.h.var
 */

