 __VERSION 1

// not       : Ignore
// include   : #includes
// word      : Alphanumeric or underscore
// namespace : Prefix search and replace (c-namspaces).
// regex     : Unavailable in __VERSION 1.

// Precedence (highest to lowest):
// word, namespace, regex

// Metadesk namespaces
// namespace MD_, new_namespace_
// namespace md_, new_namespace_

// base module

// base/context_cracking.h

namespace BUILD_, MD_BUILD_

namespace ARCH_,     MD_ARCH_
namespace COMPILER_, MD_COMPILER_
namespace GCC_,      MD_GCC_
namespace LANG_,     MD_LANG_
namespace OS_,       MD_OS_

word HAS_ATTRIBUTE, MD_HAS_ATTRIBUTE

// base/linkage.h

word global,   md_global
word internal, md_internal

// base/macros.h

word expect,   md_expect
word likely,   md_likely
word unlikely, md_unlikely

word ccast, word md_ccast
word pcast, word md_pcast
word rcast, word md_rcast 
word scast, word md_scast

// word typeof, word md_typeof

word enum_underlying, md_enum_underlying
word nullptr,         md_nullptr

word force_inline, md_force_inline
word never_inline, md_never_inline

word defer_loop,         md_defer_loop
word defer_loop_checked, md_defer_loop_checked

word each_enum_val,          md_each_enum_val
word each_non_zero_enum_val, md_each_non_zero_enum_val

// base/profiling.h

word MARKUP_LAYER_COLOR, MD_MARKUP_LAYER_COLOR

namespace prof_, md_prof_

// base/base_types.h

word U8,   MD_U8
word U16,  MD_U16
word U32,  MD_U32
word U64,  MD_U64
word S8,   MD_S8
word S16,  MD_S16
word S32,  MD_S32
word S64,  MD_S64
word S128, MD_S128

word USIZE, MD_USIZE
word SSIZE, MD_SSIZE

word SPTR, MD_SPTR
word UPTR, MD_UPTR

word F32, MD_F32
word F64, MD_F64

word B8,  MD_B8
word B16, MD_B16
word B32, MD_B32

word VoidProc, MD_VoidProc

word SIGN32,     MD_SIGN32
word EXPONENT32, MD_EXPONENT32
word MANTISSA32, MD_MANTISSA32

word BIG_GOLDEN32, MD_BIG_GOLDEN32

word SMALL_GOLDEN32, MD_SMALL_GOLDEN32

word PI32, MD_PI32

word MACHINE_EPSILON64, MD_MACHINE_EPSILON64

word MIN_U8, MD_MIN_U8
word MAX_U8, MD_MAX_U8
word MIN_S8, MD_MIN_S8
word MAX_S8, MD_MAX_S8

word MIN_U16, MD_MIN_U16
word MAX_U16, MD_MAX_U16
word MIN_S16, MD_MIN_S16
word MAX_S16, MD_MAX_S16

word MIN_U32, MD_MIN_U32
word MAX_U32, MD_MAX_U32
word MIN_S32, MD_MIN_S32
word MAX_S32, MD_MAX_S32

word MIN_U64, MD_MIN_U64
word MAX_U64, MD_MAX_U64
word MIN_S64, MD_MIN_S64
word MAX_S64, MD_MAX_S64

word MIN_USIZE, MD_MIN_USIZE
word MAX_USIZE, MD_MAX_USIZE
word MIN_ISIZE, MD_MIN_SSIZE
word MAX_ISIZE, MD_MAX_SSIZE

word MIN_F32, MD_MIN_F32
word MAX_F32, MD_MAX_F32
word MIN_F64, MD_MIN_F64
word MAX_F64, MD_MAX_F64

word BITMASK1,  MD_BITMASK1
word BITMASK2,  MD_BITMASK2
word BITMASK3,  MD_BITMASK3
word BITMASK4,  MD_BITMASK4
word BITMASK5,  MD_BITMASK5
word BITMASK6,  MD_BITMASK6
word BITMASK7,  MD_BITMASK7
word BITMASK8,  MD_BITMASK8
word BITMASK9,  MD_BITMASK9
word BITMASK10, MD_BITMASK10
word BITMASK11, MD_BITMASK11
word BITMASK12, MD_BITMASK12
word BITMASK13, MD_BITMASK13
word BITMASK14, MD_BITMASK14
word BITMASK15, MD_BITMASK15
word BITMASK16, MD_BITMASK16
word BITMASK17, MD_BITMASK17
word BITMASK18, MD_BITMASK18
word BITMASK19, MD_BITMASK19
word BITMASK20, MD_BITMASK20
word BITMASK21, MD_BITMASK21
word BITMASK22, MD_BITMASK22
word BITMASK23, MD_BITMASK23
word BITMASK24, MD_BITMASK24
word BITMASK25, MD_BITMASK25
word BITMASK26, MD_BITMASK26
word BITMASK27, MD_BITMASK27
word BITMASK28, MD_BITMASK28
word BITMASK29, MD_BITMASK29
word BITMASK30, MD_BITMASK30
word BITMASK31, MD_BITMASK31
word BITMASK32, MD_BITMASK32

word BITMASK33, MD_BITMASK33
word BITMASK34, MD_BITMASK34
word BITMASK35, MD_BITMASK35
word BITMASK36, MD_BITMASK36
word BITMASK37, MD_BITMASK37
word BITMASK38, MD_BITMASK38
word BITMASK39, MD_BITMASK39
word BITMASK40, MD_BITMASK40
word BITMASK41, MD_BITMASK41
word BITMASK42, MD_BITMASK42
word BITMASK43, MD_BITMASK43
word BITMASK44, MD_BITMASK44
word BITMASK45, MD_BITMASK45
word BITMASK46, MD_BITMASK46
word BITMASK47, MD_BITMASK47
word BITMASK48, MD_BITMASK48
word BITMASK49, MD_BITMASK49
word BITMASK50, MD_BITMASK50
word BITMASK51, MD_BITMASK51
word BITMASK52, MD_BITMASK52
word BITMASK53, MD_BITMASK53
word BITMASK54, MD_BITMASK54
word BITMASK55, MD_BITMASK55
word BITMASK56, MD_BITMASK56
word BITMASK57, MD_BITMASK57
word BITMASK58, MD_BITMASK58
word BITMASK59, MD_BITMASK59
word BITMASK60, MD_BITMASK60
word BITMASK61, MD_BITMASK61
word BITMASK62, MD_BITMASK62
word BITMASK63, MD_BITMASK63
word BITMASK64, MD_BITMASK64

word BIT1,  MD_BIT1
word BIT2,  MD_BIT2
word BIT3,  MD_BIT3
word BIT4,  MD_BIT4
word BIT5,  MD_BIT5
word BIT6,  MD_BIT6
word BIT7,  MD_BIT7
word BIT8,  MD_BIT8
word BIT9,  MD_BIT9
word BIT10, MD_BIT10
word BIT11, MD_BIT11
word BIT12, MD_BIT12
word BIT13, MD_BIT13
word BIT14, MD_BIT14
word BIT15, MD_BIT15
word BIT16, MD_BIT16
word BIT17, MD_BIT17
word BIT18, MD_BIT18
word BIT19, MD_BIT19
word BIT20, MD_BIT20
word BIT21, MD_BIT21
word BIT22, MD_BIT22
word BIT23, MD_BIT23
word BIT24, MD_BIT24
word BIT25, MD_BIT25
word BIT26, MD_BIT26
word BIT27, MD_BIT27
word BIT28, MD_BIT28
word BIT29, MD_BIT29
word BIT30, MD_BIT30
word BIT31, MD_BIT31
word BIT32, MD_BIT32

word BIT33, MD_BIT33
word BIT34, MD_BIT34
word BIT35, MD_BIT35
word BIT36, MD_BIT36
word BIT37, MD_BIT37
word BIT38, MD_BIT38
word BIT39, MD_BIT39
word BIT40, MD_BIT40
word BIT41, MD_BIT41
word BIT42, MD_BIT42
word BIT43, MD_BIT43
word BIT44, MD_BIT44
word BIT45, MD_BIT45
word BIT46, MD_BIT46
word BIT47, MD_BIT47
word BIT48, MD_BIT48
word BIT49, MD_BIT49
word BIT50, MD_BIT50
word BIT51, MD_BIT51
word BIT52, MD_BIT52
word BIT53, MD_BIT53
word BIT54, MD_BIT54
word BIT55, MD_BIT55
word BIT56, MD_BIT56
word BIT57, MD_BIT57
word BIT58, MD_BIT58
word BIT59, MD_BIT59
word BIT60, MD_BIT60
word BIT61, MD_BIT61
word BIT62, MD_BIT62
word BIT63, MD_BIT63
word BIT64, MD_BIT64

word Guid,      MD_Guid
word U16Array,  MD_U16Array
word U32Array,  MD_U32Array
word U64Array,  MD_U64Array
word U128Array, MD_U128Array

// base/ring.h

namespace ring_, md_ring_

// base/debug.h

word trap,          md_trap
word assert_always, md_assert_always
word assert,        md_asert

word invalid_path,    md_invalid_path
word not_implemented, md_not_implemented
word no_op,           md_no_op

word assert_handler, md_assert_handler

// base/memory.h

word KILOBYTES, MD_KILOBYTES
word MEGABYTES, MD_MEGABYTES
word GIGABYTES, MD_GIGABYTES
word TERABYTES, MD_TERABYTES

word KB, MD_KB
word MB, MD_MB
word GB, MD_GB
word TB, MD_TB

word thosuand, md_thousand
word million,  md_million
word billion,  md_billion

word min, md_min
word max, md_max

word clamp_top, md_clamp_top
word clamp_bot, md_clamp_bot
word clamp,     md_clamp

word align_of,           md_align_of
word offset_of,          md_offset_of
word member_from_offset, md_member_from_offset
word cast_from_member,   md_cast_from_member

word memory_copy,    md_memory_copy
word memory_set,     md_memory_set
word memory_compare, md_memory_compare
word memory_str_len, md_memory_str_len

word memory_copy_struct, md_memory_copy_struct
word memory_copy_array,  md_memory_copy_array
word memory_copy_type,   md_memory_copy_type

word memory_zero,        md_memory_zero
word memory_zero_struct, md_memory_zero_struct
word memroy_zero_array,  md_memory_zero_array
word memory_zero_type,   md_memory_zero_type

word memory_match,        md_memory_match
word memory_match_struct, md_memory_match_struct
word memory_match_array,  md_memory_match_array
word memory_match_type,   md_memory_match_type

word memory_read,    md_memory_read
word memory_consume, md_memory_consume

word memory_is_zero, md_memory_is_zero
word mem_move,       md_mem_move
word mem_set,        md_mem_set

namespace ins_atomic_, md_ins_atomic_

word check_nil, md_check_nil
word set_nil,   md_set_nil

// word dll_insert_npz,     md_dll_insert_npz, 
// word dll_push_back_npz,  md_dll_push_back_npz, 
// word dll_push_front_npz, md_dll_push_front_npz, 
// word dll_remove_npz,     md_dll_remove_npz

// word sll_queue_push_nz,       md_sll_queue_push_nz
// word sll_queue_push_front_nz, md_sll_queue_push_front_nz
// word sll_queue_pop_nz,        md_sll_queue_pop_nz

// word sll_stack_push_n, md_sll_stack_push_n
// word sll_stack_pop_n,  md_sll_stack_pop_n

namespace dll_, md_dll_
namespace sll_, md_sll_

word NO_ASAN, MD_NO_ASAN

namespace asan_, md_asan_

word stringify,  md_stringify
word stringify_, md_stringify_

word glue,  md_glue
word glue_, md_glue_

word array_count, md_array_count

word ceil_integer_div, md_ceil_integer_div

word swap, md_swap

word int_from_ptr,     md_int_from_ptr
word ptr_from_int,     md_ptr_from_int
 
word compose_64bit,   md_compose_64bit
word align_pow2,      md_align_pow2
word align_down_pow2, md_align_down_pow2
word align_pad_pow2,  md_align_pad_pow2
word is_pow2,         md_is_pow2
word is_pow2_or_zero, md_is_pow2_or_zero

word extract_bit, md_extract_bit
word zero_struct, md_zero_struct

word this_function_name, md_this_function_name

word read_only, md_read_only

word local_persist, md_local_persist
word thread_static, md_thread_static
word thread_local,  md_thread_local

namespace safe_cast_, md_safe_cast_

word u128_zero,  md_u128_zero
word u128_make,  md_u128_make
word u128_match, md_u128_match

word u32_from_u64_saturate, md_u32_from_u64_saturate

word u64_up_to_pow2, md_u64_up_to_pow2

word extend_sign32, md_extend_sign32
word extend_sign64, md_extend_sign64

word inf32,     md_inf32
word neg_inf32, md_neg_inf32

word bswap_u16, md_bswap_u16
word bswap_u32, md_bswap_u32
word bswap_u64, md_bswap_u64

word from_be_u16, md_from_be_u16
word from_be_u32, md_from_be_u32
word from_be_u64, md_from_be_u64

word count_bits_set16, md_count_bits_set16
word count_bits_set32, md_count_bits_set32
word count_bits_set64, md_count_bits_set64

word ctz32, md_ctz32
word ctz64, md_ctz64
word clz32, md_clz32
word clz64, md_clz64

// base/memory_substrate.h

word AllocatorType,       MD_AllocatorType
word AllocatorMode,       MD_AllocatorMode
word AllocatorQueryFlags, MD_AllocatorQueryFlags
word AllocatorProc,       MD_AllocatorProc
word AllocatorInfo,       MD_AllocatorInfo

namespace AllocatorType_,  MD_AllocatorType_
namespace AllocatorMode_,  MD_AllocatorMode_
namespace AllocatorQuery_, MD_AllocatorQuery_

word default_allocator, md_default_allocator

word ALLOCATOR_FLAG_CLEAR_TO_ZERO, MD_ALLOCATOR_FLAG_CLEAR_TO_ZERO

word allocator_type,          md_allocator_type
word allocator_query_support, md_allocator_query_support

word alloc,        md_alloc
word alloc_align,  md_alloc_align
word free_mem,     md_free_mem
word free_all,     md_free_all
word resize,       md_resize
word resize_align, md_resize_align

word alloc_item,          md_alloc_item
word alloc_array,         md_alloc_array
word alloc_array_no_zero, md_alloc_array_no_zero

word default_resize_align, md_default_resize_align

word heap_stats_init,        md_heap_stats_init
word heap_stats_used_mem,    md_heap_stats_used_mem
word heap_stats_alloc_count, md_heap_stats_alloc_count
word heap_stats_check,       md_heap_stats_check
word heap_allocator_proc,    md_heap_allocator_proc
word heap,                   md_heap

word malloc, md_malloc
word mfree,  md_mfree

namespace VARENA_, MD_VARENA_

word VArenaFlags, MD_VArenaFlags
word VArena,      MD_VArena

namespace VArenaFlag_, MD_VArenaFlag_

word varena__alloc,         md_varena__alloc
word varena_commit,         md_varena_commit
word varena_release,        md_varena_release
word varena_allocator_proc, md_varena_allocator_proc
word varena_allocator,      md_varena_allocator

word ByteSlice, MD_ByteSlice

word mem_to_byteslice, md_mem_to_byteslice

word FArena,                MD_FArena
word farena_from_byteslice, md_farena_from_byteslice
word farena_from_memory,    md_farena_from_memory

// base/arena.h

word ArenaFlags,  MD_ArenaFlags
word ArenaParams, MD_ArenaParams
word Arena,       MD_Arena
word TempArena,   MD_TempArena

namespace arena_,     md_arena_
namespace push_array, md_push_array_

word temp_begin, md_temp_begin
word temp_end,   md_temp_end

word default_allocator, md_default_allocator

// base/space.h

word Dimension, MD_Dimension
word Side,      MD_Side
word Axis2,     MD_Axis2
word Corner,    MD_corner
word Dir2,      MD_Dir2

namespace Dimension_, MD_Dimension_
namespace Side_,      MD_Side_
namespace Axis2_,     MD_Axis2_
namespace Corner_,    MD_Corner_
namespace Dir2_,      MD_Dir2_

word axis_from_dir2, md_axis_from_dir2
word side_from_dir2, md_side_from_dir2

word sign_from_side_f32, md_side_from_side_f32
wrod sign_from_side_f64, md_side_from_side_f64

// base/math.h

word Vec2F32, MD_Vec2F32
word Vec2S64, MD_Vec2S64
word Vec2S32, MD_Vec2S32
word Vec2S16, MD_Vec2S16

word Vec3F32, MD_Vec3F32
word Vec3S64, MD_Vec3S64
word Vec3S32, MD_Vec3S32

word Vec4F32, MD_Vec4F32
word Vec4S32, MD_Vec4S32

word Mat3x3F32, MD_Mat3x3F32
word Mat4x4F32, MD_Mat4x4F32

word Rng1U32, MD_Rng1U32
word Rng1S32, MD_Rng1S32
word Rng1U64, MD_Rng1U64
word Rng1F64, MD_Rng1F64

word Rng2S16, MD_Rng2S16
word Rng2S32, MD_Rng2S32
word Rng2F32, MD_Rng2F32
word Rng2S64, MD_Rng2S64

word Rng1S64Node,  MD_Rng1S64Node
word Rng1S64List,  MD_Rng1S64List
word Rng1S64Array, MD_Rng1S64Array

// word md_min,    md_min
// word md_max,    md_max
word clamp_top, md_clamp_top
word clamp_bot, md_clamp_bot
word clamp,     md_clamp

word abs_s64,   md_abs_s64
word sqrt_f32,  md_sqrt_f32
word mod_f32,   md_mod_f32
word pow_f32,   md_pow_f32
word ceil_f32,  md_ceil_f32
word floor_f32, md_floor_f32
word round_f32, md_round_f32
word abs_f32,   md_abs_f32

word radians_from_turns_f32, md_radians_from_turns_f32
word turns_from_radians_f64, md_turns_from_radians_f64
word degrees_from_turns_f64, md_degrees_from_turns_f64
word turns_from_degrees_f64, md_turns_from_degrees_f64

word degrees_from_radians_f64, md_degrees_from_radians_f64
word radians_from_degrees_f64, md_radians_from_degrees_f64

word sin_f64, md_sin_f64
word cos_f64, md_cos_f64
word tan_f64, md_tan_f64

word mix_1f32, md_mix_1f32
word mix_1f64, md_mix_1f64

word v2f32,               md_v2f32
word vec_2f32,            md_vec_2f32
word add_2f32,            md_add_2f32
word sub_2f32,            md_sub_2f32
word mul_2f32,            md_mul_2f32
word div_2f32,            md_div_2f32
word scale_2f32,          md_scale_2f32
word dot_2f32,            md_dot_2f32
word length_squared_2f32, md_length_squared_2f32
word length_2f32,         md_length_2f32
word normalize_2f32,      md_normalize_2f32
word mix_2f32,            md_mix_2f32

word v2s64,               md_v2s64
word vec_2s64,            md_vec_2s64
word add_2s64,            md_add_2s64
word sub_2s64,            md_sub_2s64
word mul_2s64,            md_mul_2s64
word div_2s64,            md_div_2s64
word scale_2s64,          md_scale_2s64
word dot_2s64,            md_dot_2s64
word length_squared_2s64, md_length_squared_2s64
word length_2s64,         md_length_2s64
word normalize_2s64,      md_normalize_2s64
word mix_2s64,            md_mix_2s64

word v2s32,               md_v2s32
word vec_2s32,            md_vec_2s32
word add_2s32,            md_add_2s32
word sub_2s32,            md_sub_2s32
word mul_2s32,            md_mul_2s32
word div_2s32,            md_div_2s32
word scale_2s32,          md_scale_2s32
word dot_2s32,            md_dot_2s32
word length_squared_2s32, md_length_squared_2s32
word length_2s32,         md_length_2s32
word normalize_2s32,      md_normalize_2s32
word mix_2s32,            md_mix_2s32

word v2s16,               md_v2s16
word vec_2s16,            md_vec_2s16
word add_2s16,            md_add_2s16
word sub_2s16,            md_sub_2s16
word mul_2s16,            md_mul_2s16
word div_2s16,            md_div_2s16
word scale_2s16,          md_scale_2s16
word dot_2s16,            md_dot_2s16
word length_squared_2s16, md_length_squared_2s16
word length_2s16,         md_length_2s16
word normalize_2s16,      md_normalize_2s16
word mix_2s16,            md_mix_2s16

word vec2,                md_vec2
word add_vec2,            md_add_vec2
word sub_vec2,            md_sub_vec2
word mul_vec2,            md_mul_vec2
word div_vec2,            md_div_vec2
word scale_vec2,          md_scale_vec2
word dot_vec2,            md_dot_vec2
word length_squared_vec2, md_length_squared_vec2
word length_vec2,         md_length_vec2
word normalize_vec2,      md_normalize_vec2
word mix_vec2,            md_mix_vec2

word v3f32,               md_v3f32
word vec_3f32,            md_vec_3f32
word add_3f32,            md_add_3f32
word sub_3f32,            md_sub_3f32
word mul_3f32,            md_mul_3f32
word div_3f32,            md_div_3f32
word scale_3f32,          md_scale_3f32
word dot_3f32,            md_dot_3f32
word length_squared_3f32, md_length_squared_3f32
word length_3f32,         md_length_3f32
word normalize_3f32,      md_normalize_3f32
word mix_3f32,            md_mix_3f32
word cross_3f32,          md_cross_3f32

word v3s32,               md_v3s32
word vec_3s32,            md_vec_3s32
word add_3s32,            md_add_3s32
word sub_3s32,            md_sub_3s32
word mul_3s32,            md_mul_3s32
word div_3s32,            md_div_3s32
word scale_3s32,          md_scale_3s32
word dot_3s32,            md_dot_3s32
word length_squared_3s32, md_length_squared_3s32
word length_3s32,         md_length_3s32
word normalize_3s32,      md_normalize_3s32
word mix_3s32,            md_mix_3s32
word cross_3s32,          md_cross_3s32

word vec3,                md_vec3
word add_vec3,            md_add_vec3
word sub_vec3,            md_sub_vec3
word mul_vec3,            md_mul_vec3
word div_vec3,            md_div_vec3
word scale_vec3,          md_scale_vec3
word dot_vec3,            md_dot_vec3
word length_squared_vec3, md_length_squared_vec3
word length_vec3,         md_length_vec3
word normalize_vec3,      md_normalize_vec3
word mix_vec3,            md_mix_vec3
word cross_vec3,          md_cross_vec3

word v4f32,               md_v4f32
word vec_4f32,            md_vec_4f32
word add_4f32,            md_add_4f32
word sub_4f32,            md_sub_4f32
word mul_4f32,            md_mul_4f32
word div_4f32,            md_div_4f32
word scale_4f32,          md_scale_4f32
word dot_4f32,            md_dot_4f32
word length_squared_4f32, md_length_squared_4f32
word length_4f32,         md_length_4f32
word normalize_4f32,      md_normalize_4f32
word mix_4f32,            md_mix_4f32

word v4s32,               v4s32
word vec_4s32,            md_vec_4s32
word add_4s32,            md_add_4s32
word sub_4s32,            md_sub_4s32
word mul_4s32,            md_mul_4s32
word div_4s32,            md_div_4s32
word scale_4s32,          md_scale_4s32
word dot_4s32,            md_dot_4s32
word length_squared_4s32, md_length_squared_4s32
word length_4s32,         md_length_4s32
word normalize_4s32,      md_normalize_4s32
word mix_4s32,            md_mix_4s32

word vec4,                md_vec4
word add_vec4,            md_add_vec4
word sub_vec4,            md_sub_vec4
word mul_vec4,            md_mul_vec4
word div_vec4,            md_div_vec4
word scale_vec4,          md_scale_vec4
word dot_vec4,            md_dot_vec4
word length_squared_vec4, md_length_squared_vec4
word length_vec4,         md_length_vec4
word normalize_vec4,      md_normalize_vec4
word mix_vec4,            md_mix_vec4

word mat_3x3f32,               md_mat_3x3f32
word make_translate_3x3f32,    md_make_translate_3x3f32
word make_scale_3x3f32,        md_make_scale_3x3f32
word mul_3x3f32,               md_mul_3x3f32

word mat_4x4f32,               md_mat_4x4f32
word make_translate_4x4f32,    md_make_translate_4x4f32
word make_scale_4x4f32,        md_make_scale_4x4f32

word make_perspective_4x4f32,  md_make_perspective_4x4f32
word make_orthographic_4x4f32, md_make_orthographic_4x4f32
word make_look_at_4x4f32,      md_make_look_at_4x4f32
word make_rotate_4x4f32,       md_make_rotate_4x4f32

word mul_4x4f32,               md_mul_4x4f32
word scale_4x4f32,             md_scale_4x4f32
word inverse_4x4f32,           md_inverse_4x4f32
word derotate_4x4f32,          md_derotate_4x4f32

word r1u32,          md_r1u32
word rng_1u32,       md_rng_1u32
word shift_1u32,     md_shift_1u32
word pad_1u32,       md_pad_1u32
word center_1u32,    md_center_1u32
word contains_1u32,  md_contains_1u32
word dim_1u32,       md_dim_1u32
word union_1u32,     md_union_1u32
word intersect_1u32, md_intersect_1u32
word clamp_1u32,     md_clamp_1u32

word r1s32,          md_r1s32
word rng_1s32,       md_rng_1s32
word shift_1s32,     md_shift_1s32
word pad_1s32,       md_pad_1s32
word center_1s32,    md_center_1s32
word contains_1s32,  md_contains_1s32
word dim_1s32,       md_dim_1s32
word union_1s32,     md_union_1s32
word intersect_1s32, md_intersect_1s32
word clamp_1s32,     md_clamp_1s32

word r1u64,          md_r1u64
word rng_1u64,       md_rng_1u64
word shift_1u64,     md_shift_1u64
word pad_1u64,       md_pad_1u64
word center_1u64,    md_center_1u64
word contains_1u64,  md_contains_1u64
word dim_1u64,       md_dim_1u64
word union_1u64,     md_union_1u64
word intersect_1u64, md_intersect_1u64
word clamp_1u64,     md_clamp_1u64

word r1s64,          md_r1s64
word rng_1s64,       md_rng_1s64
word shift_1s64,     md_shift_1s64
word pad_1s64,       md_pad_1s64
word center_1s64,    md_center_1s64
word contains_1s64,  md_contains_1s64
word dim_1s64,       md_dim_1s64
word union_1s64,     md_union_1s64
word intersect_1s64, md_intersect_1s64
word clamp_1s64,     md_clamp_1s64

word r1f32,          md_r1f32
word rng_1f32,       md_rng_1f32
word shift_1f32,     md_shift_1f32
word pad_1f32,       md_pad_1f32
word center_1f32,    md_center_1f32
word contains_1f32,  md_contains_1f32
word dim_1f32,       md_dim_1f32
word union_1f32,     md_union_1f32
word intersect_1f32, md_intersect_1f32
word clamp_1f32,     md_clamp_1f32

word r2s16,          md_r2s16
word r2s16p,         md_r2s16p
word rng_2s16,       md_rng_2s16
word shift_2s16,     md_shift_2s16
word pad_2s16,       md_pad_2s16
word center_2s16,    md_center_2s16
word contains_2s16,  md_contains_2s16
word dim_2s16,       md_dim_2s16
word union_2s16,     md_union_2s16
word intersect_2s16, md_intersect_2s16
word clamp_2s16,     md_clamp_2s16

word r2s32,          md_r2s32
word r2s32p,         md_r2s32p
word rng_2s32,       md_rng_2s32
word shift_2s32,     md_shift_2s32
word pad_2s32,       md_pad_2s32
word center_2s32,    md_center_2s32
word contains_2s32,  md_contains_2s32
word dim_2s32,       md_dim_2s32
word union_2s32,     md_union_2s32
word intersect_2s32, md_intersect_2s32
word clamp_2s32,     md_clamp_2s32

word r2s64,          md_r2s64
word r2s64p,         md_r2s64p
word rng_2s64,       md_rng_2s64
word shift_2s64,     md_shift_2s64
word pad_2s64,       md_pad_2s64
word center_2s64,    md_center_2s64
word contains_2s64,  md_contains_2s64
word dim_2s64,       md_dim_2s64
word union_2s64,     md_union_2s64
word intersect_2s64, md_intersect_2s64
word clamp_2s32,     md_clamp_2s32

word hsv_from_rgb,   md_hsv_from_rgb
word rgb_from_hsv,   md_rgb_from_hsv
word hsva_from_rgba, md_hsva_from_rgba
word rgba_from_hsva, md_rgba_from_hsva
word rgba_from_u32,  md_rgba_from_u32
word u32_from_rgba,  md_u32_from_rgba

namespace rgba_from_, md_rgba_from_

word rng1s64_list_push,             md_rng1s64_list_push
word rng1s64_array_from_list,       md_rng1s64_array_from_list
word rng1s64_list_alloc,            md_rng1s64_list_alloc
word rng1s64_array_from_list_alloc, md_rng1s64_array_from_list_alloc

// base/toolchain.h

word OperatingSystem, MD_OperatingSystem
word ImageType,       MD_ImageType
word Arch,            MD_Arch
word Compiler,        MD_Compiler

namespace OperatingSystem_, MD_OperatingSystem_
namespace Image_,           MD_Image_
namespace Arch_,            MD_Arch_
namespace Compiler_,        MD_Compiler_

word bit_size_from_arch,             md_bit_size_from_arch
word max_instruction_size_from_arch, md_max_instruction_size_from_arch
word operating_system_from_context,  md_operating_system_from_context
word arch_from_context,              md_arch_from_contexto
word compiler_from_context,          md_compiler_from_context

// base/strings.h

word String8,             MD_String8
word String16,            MD_String16
word String32,            MD_String32
word String8Node,         MD_String8Node
word String8MetaNode,     MD_String8MetaNode
word String8List,         MD_String8List
word String8Array,        MD_String8Array
word StringMatchFlags,    MD_StringMatchFlags
word StringSplitFlags,    MD_StringSplitFlags
word PathStyle,           MD_PathStyle
word StringJoin,          MD_StringJoin
word UnicodeDecode,       MD_UnicodeDecode
word FuzzyMatchRangeNode, MD_FuzzyMatchRangeNode
word FuzzyMatchRangeList, MD_FuzzyMatchRangeList

namespace StringMatchFlag_, MD_StringMatchFlag_
namespace StringSplitFlag_, MD_StringSplitFlag_
namespace PathStyle_,       MD_PathStyle_

namepsace char_, md_char_

word cstring8_length,  md_cstring8_length
word cstring16_length, md_cstring16_length
word cstring32_length, md_cstring32_length
word cstring_length,   md_cstring_length

namespace str8_,             md_str8_
namespace str16_,            md_str16_
namespace str32_,            md_str32_
namespace str_,              md_str_
namespace upper_from_,       md_upper_from
namespace lower_from_,       md_lower_from
namespace backslashed_from_, md_backslashed_from_
namespace push_,             md_push_
namespace alloc_,            md_alloc_
namespace sign_from_,        md_sign_from_
namespace u64_from_,         md_u64_from_
namespace s64_from_,         md_s64_from_
namespace u32_from_,         md_u32_from_
namespace try_,              md_try_
namespace f64_from_,         md_f64_from_
namespace string_,           md_string_
namespace guid_,             md_guid_
namespace indented_from_,    md_indented_from_
namespace escaped_from_,     md_escaped_from_
namespace raw_from,          md_raw_from_
namespace wrapped_lines_,    md_wrapped_lines_
namespace hex_string_,       md_hex_string_
//namespace rgba_from_,        md_rgba_from_ (done by math.h)
namespace fuzzy_match_,      md_fuzzy_match_

// base/thread_context.h

word TCTX, MD_TCTX

namespace tctx, md_tctx

word scratch_begin, md_scratch_begin

// base/command_line.h

word CmdLineOpt,     MD_CmdLineOpt
word CmdLineOptList, MD_CmdLineOptList
word CmdLine,        MD_CmdLine

namespace cmd_line_, md_cmd_line_

// base/markup.h

word set_thread_name,  md_set_thread_name
word set_thread_namef, md_set_thread_namef
word thread_namef,     md_thread_namef
word thread_name,      md_thread_name

// base/logger.h

word LogMsgKind,     MD_LogMsgKind
word LogScope,       MD_LogScope
word LogScopeResult, MD_LogScopeResult
word Log,            MD_Log

namespace LogMsgKind_, MD_LogMsgKind_

namespace LOG_DEFAULT_, MD_LOG_DEFAULT_

namespace log_, md_log_

// base/entry_point.h

word MainThread_EntryPointProc,       MD_MainThread_EntryPointProc
word SupplementThread_EntryPointProc, MD_SupplementThread_EntryPointProc

word main_thread_base_entry_point,       md_main_thread_base_entry_point
word supplement_thread_base_entry_point, md_supplement_thread_base_entry_point

// base/time.h

word WeekDay,   MD_WeekDay
word Month,     MD_Month
word DateTime,  MD_DateTime
word DenseTime, MD_DenseTime

namespace WeekDay_, MD_WeekDay_
namespace Month_,   MD_Month_

word dense_time_from_date_time, md_dense_time_from_date_time

namespace date_time_, md_date_time_

// base/file.h

word FilePropertyFlags, MD_FilePropertyFlags
word FileProperties,    MD_FileProperties

namespace FilePropertyFlag_, MD_FilePropertyFlag_



// os/os.h

namespace OS_, MD_OS_
namespace os_, md_os_

namespace entry_point, md_entry_point


// metadesk module

// word MsgKind,            MD_MsgKind
// word MsgKind_Null,       MD_MsgKind_Null
// word MsgKind_Note,       MD_MsgKind_Note
// word MsgKind_Warning,    MD_MsgKind_Warning
// word MsgKind_Error,      MD_MsgKind_Error
// word MsgKind_FatalError, MD_MsgKind_FatalError
namespace MsgKind, MD_MsgKind


word Msg,     MD_Msg
word MsgList, MD_MsgList

word      TokenFlags,     MD_MsgFlags
namespace TokenFlag_,     MD_TokenFlag_
word      TokenGroups,    MD_TokenGroups
namespace TokenGroup_,    MD_TokenGroup_
word      Token,          MD_Token
word      TokenChunkNode, MD_TokenChunkNode
word      TokenChunkList, MD_TokenChunkList
word      TokenArray,     MD_TokenArray

namespace NodeKind, MD_NodeKind
word      Node,     MD_Node

// metagen module


