use strict;
use STASH;
use NAME;
my $file = { name => 'CORE.pad' };
my $core = STASH::->new( _file => $file, _line => __LINE__,
    Bool => NAME::->new( name => 'Bool', file => $file, line => __LINE__ ),
    'Bool::' => STASH::->new( _file => $file, _line => __LINE__,
	True => NAME::->new( name => 'True', file => $file, line => __LINE__ ),
	False => NAME::->new( name => 'False', file => $file, line => __LINE__ ),
    ),
    Num => NAME::->new( name => 'Num', file => $file, line => __LINE__),
    'Num::' => STASH::->new( _file => $file, _line => __LINE__,
	pi => NAME::->new( name => 'pi', value => atan2(1,1)*4, file => $file, line => __LINE__ ),
	e => NAME::->new( name => 'e', value => exp(1), file => $file, line => __LINE__ ),
    ),
    Order => NAME::->new( name => 'Order', file => $file, line => __LINE__),
    'Order::' => STASH::->new( _file => $file, _line => __LINE__,
	Increase => NAME::->new( name => 'Increase', file => $file, line => __LINE__ ),
	Same => NAME::->new( name => 'Same', file => $file, line => __LINE__ ),
	Decrease => NAME::->new( name => 'Decrease', file => $file, line => __LINE__ ),
    ),
    DEBUG => NAME::->new( name => 'DEBUG', file => $file, line => __LINE__),
    'DEBUG::' => STASH::->new( _file => $file, _line => __LINE__,
	EXPR => NAME::->new( name => 'Increase', file => $file, line => __LINE__, export => 'DEFAULT' ),
	trace_call => NAME::->new( name => 'Increase', file => $file, line => __LINE__, export => 'DEFAULT' ),
    ),

    Nil => NAME::->new( name => 'Nil', file => $file, line => __LINE__ ),
    True => NAME::->new( name => 'True', file => $file, line => __LINE__ ),
    False => NAME::->new( name => 'False', file => $file, line => __LINE__ ),
    P6opaque => NAME::->new( name => 'P6opaque', file => $file, line => __LINE__ ),
    Object => NAME::->new( name => 'Object', file => $file, line => __LINE__ ),
    Any => NAME::->new( name => 'Any', file => $file, line => __LINE__ ),
    Junction => NAME::->new( name => 'Junction', file => $file, line => __LINE__ ),
    junction => NAME::->new( name => 'junction', file => $file, line => __LINE__ ),
    Whatever => NAME::->new( name => 'Whatever', file => $file, line => __LINE__ ),
    WhateverCode => NAME::->new( name => 'WhateverCode', file => $file, line => __LINE__ ),
    HyperWhatever => NAME::->new( name => 'HyperWhatever', file => $file, line => __LINE__ ),
    Capture => NAME::->new( name => 'Capture', file => $file, line => __LINE__ ),
    Match => NAME::->new( name => 'Match', file => $file, line => __LINE__ ),
    Signature => NAME::->new( name => 'Signature', file => $file, line => __LINE__ ),
    Proxy => NAME::->new( name => 'Proxy', file => $file, line => __LINE__ ),
    Matcher => NAME::->new( name => 'Matcher', file => $file, line => __LINE__ ),
    Package => NAME::->new( name => 'Package', file => $file, line => __LINE__ ),
    Module => NAME::->new( name => 'Module', file => $file, line => __LINE__ ),
    Class => NAME::->new( name => 'Class', file => $file, line => __LINE__ ),
    Role => NAME::->new( name => 'Role', file => $file, line => __LINE__ ),
    Grammar => NAME::->new( name => 'Grammar', file => $file, line => __LINE__ ),
    Scalar => NAME::->new( name => 'Scalar', file => $file, line => __LINE__ ),
    Array => NAME::->new( name => 'Array', file => $file, line => __LINE__ ),
    Hash => NAME::->new( name => 'Hash', file => $file, line => __LINE__ ),
    KeyHash => NAME::->new( name => 'KeyHash', file => $file, line => __LINE__ ),
    KeySet => NAME::->new( name => 'KeySet', file => $file, line => __LINE__ ),
    KeyBag => NAME::->new( name => 'KeyBag', file => $file, line => __LINE__ ),
    Pair => NAME::->new( name => 'Pair', file => $file, line => __LINE__ ),
    List => NAME::->new( name => 'List', file => $file, line => __LINE__ ),
    Seq => NAME::->new( name => 'Seq', file => $file, line => __LINE__ ),
    Range => NAME::->new( name => 'Range', file => $file, line => __LINE__ ),
    Set => NAME::->new( name => 'Set', file => $file, line => __LINE__ ),
    Bag => NAME::->new( name => 'Bag', file => $file, line => __LINE__ ),
    Mapping => NAME::->new( name => 'Mapping', file => $file, line => __LINE__ ),
    Void => NAME::->new( name => 'Void', file => $file, line => __LINE__ ),
    Undef => NAME::->new( name => 'Undef', file => $file, line => __LINE__ ),
    Failure => NAME::->new( name => 'Failure', file => $file, line => __LINE__ ),
    Exception => NAME::->new( name => 'Exception', file => $file, line => __LINE__ ),
    Code => NAME::->new( name => 'Code', file => $file, line => __LINE__ ),
    Block => NAME::->new( name => 'Block', file => $file, line => __LINE__ ),
    Routine => NAME::->new( name => 'Routine', file => $file, line => __LINE__ ),
    Sub => NAME::->new( name => 'Sub', file => $file, line => __LINE__ ),
    Macro => NAME::->new( name => 'Macro', file => $file, line => __LINE__ ),
    Method => NAME::->new( name => 'Method', file => $file, line => __LINE__ ),
    Submethod => NAME::->new( name => 'Submethod', file => $file, line => __LINE__ ),
    Regex => NAME::->new( name => 'Regex', file => $file, line => __LINE__ ),
    Multi => NAME::->new( name => 'Multi', file => $file, line => __LINE__ ),

    Str => NAME::->new( name => 'Str', file => $file, line => __LINE__ ),
    Cat => NAME::->new( name => 'Cat', file => $file, line => __LINE__ ),
    Blob => NAME::->new( name => 'Blob', file => $file, line => __LINE__ ),
    Char => NAME::->new( name => 'Char', file => $file, line => __LINE__ ),
    AnyChar => NAME::->new( name => 'AnyChar', file => $file, line => __LINE__ ),
    CharLingua => NAME::->new( name => 'CharLingua', file => $file, line => __LINE__ ),
    Byte => NAME::->new( name => 'Byte', file => $file, line => __LINE__ ),
    Codepoint => NAME::->new( name => 'Codepoint', file => $file, line => __LINE__ ),
    Grapheme => NAME::->new( name => 'Grapheme', file => $file, line => __LINE__ ),
    StrPos => NAME::->new( name => 'StrPos', file => $file, line => __LINE__ ),
    StrLen => NAME::->new( name => 'StrLen', file => $file, line => __LINE__ ),
    Version => NAME::->new( name => 'Version', file => $file, line => __LINE__ ),

    Num => NAME::->new( name => 'Num', file => $file, line => __LINE__ ),
    num => NAME::->new( name => 'num', file => $file, line => __LINE__ ),
    num16 => NAME::->new( name => 'num16', file => $file, line => __LINE__ ),
    num32 => NAME::->new( name => 'num32', file => $file, line => __LINE__ ),
    num64 => NAME::->new( name => 'num64', file => $file, line => __LINE__ ),
    num128 => NAME::->new( name => 'num128', file => $file, line => __LINE__ ),

    Complex => NAME::->new( name => 'Complex', file => $file, line => __LINE__ ),
    complex => NAME::->new( name => 'complex', file => $file, line => __LINE__ ),

    # (eventually these should be instantiated generics, complex:of(num64) and such)
    complex16 => NAME::->new( name => 'complex16', file => $file, line => __LINE__ ),
    complex32 => NAME::->new( name => 'complex32', file => $file, line => __LINE__ ),
    complex64 => NAME::->new( name => 'complex64', file => $file, line => __LINE__ ),
    complex128 => NAME::->new( name => 'complex128', file => $file, line => __LINE__ ),

    Int => NAME::->new( name => 'Int', file => $file, line => __LINE__ ),
    int => NAME::->new( name => 'int', file => $file, line => __LINE__ ),

    int1 => NAME::->new( name => 'int1', file => $file, line => __LINE__ ),
    int2 => NAME::->new( name => 'int2', file => $file, line => __LINE__ ),
    int4 => NAME::->new( name => 'int4', file => $file, line => __LINE__ ),
    int8 => NAME::->new( name => 'int8', file => $file, line => __LINE__ ),
    int16 => NAME::->new( name => 'int16', file => $file, line => __LINE__ ),
    int32 => NAME::->new( name => 'int32', file => $file, line => __LINE__ ),
    int64 => NAME::->new( name => 'int64', file => $file, line => __LINE__ ),

    Rat => NAME::->new( name => 'Rat', file => $file, line => __LINE__ ),
    rat => NAME::->new( name => 'rat', file => $file, line => __LINE__ ),
    rat8 => NAME::->new( name => 'rat8', file => $file, line => __LINE__ ),
    rat16 => NAME::->new( name => 'rat16', file => $file, line => __LINE__ ),
    rat32 => NAME::->new( name => 'rat32', file => $file, line => __LINE__ ),
    rat64 => NAME::->new( name => 'rat64', file => $file, line => __LINE__ ),

    UInt => NAME::->new( name => 'UInt', file => $file, line => __LINE__ ),
    uint => NAME::->new( name => 'uint', file => $file, line => __LINE__ ),
    uint1 => NAME::->new( name => 'uint1', file => $file, line => __LINE__ ),
    uint2 => NAME::->new( name => 'uint2', file => $file, line => __LINE__ ),
    uint4 => NAME::->new( name => 'uint4', file => $file, line => __LINE__ ),
    uint8 => NAME::->new( name => 'uint8', file => $file, line => __LINE__ ),
    uint16 => NAME::->new( name => 'uint16', file => $file, line => __LINE__ ),
    uint32 => NAME::->new( name => 'uint32', file => $file, line => __LINE__ ),
    uint64 => NAME::->new( name => 'uint64', file => $file, line => __LINE__ ),

    Buf => NAME::->new( name => 'Buf', file => $file, line => __LINE__ ),
    buf => NAME::->new( name => 'buf', file => $file, line => __LINE__ ),
    buf1 => NAME::->new( name => 'buf1', file => $file, line => __LINE__ ),
    buf2 => NAME::->new( name => 'buf2', file => $file, line => __LINE__ ),
    buf4 => NAME::->new( name => 'buf4', file => $file, line => __LINE__ ),
    buf8 => NAME::->new( name => 'buf8', file => $file, line => __LINE__ ),
    buf16 => NAME::->new( name => 'buf16', file => $file, line => __LINE__ ),
    buf32 => NAME::->new( name => 'buf32', file => $file, line => __LINE__ ),
    buf64 => NAME::->new( name => 'buf64', file => $file, line => __LINE__ ),

    utf8 => NAME::->new( name => 'utf8', file => $file, line => __LINE__ ),
    utf16 => NAME::->new( name => 'utf16', file => $file, line => __LINE__ ),
    utf32 => NAME::->new( name => 'utf32', file => $file, line => __LINE__ ),

    Bit => NAME::->new( name => 'Bit', file => $file, line => __LINE__ ),
    bit => NAME::->new( name => 'bit', file => $file, line => __LINE__ ),
    bool => NAME::->new( name => 'bool', file => $file, line => __LINE__ ),

    Order => NAME::->new( name => 'Order', file => $file, line => __LINE__ ),
    Increasing => NAME::->new( name => 'Increasing', file => $file, line => __LINE__ ),
    Decreasing => NAME::->new( name => 'Decreasing', file => $file, line => __LINE__ ),
    Ordered => NAME::->new( name => 'Ordered', file => $file, line => __LINE__ ),
    Callable => NAME::->new( name => 'Callable', file => $file, line => __LINE__ ),
    Positional => NAME::->new( name => 'Positional', file => $file, line => __LINE__ ),
    Associative => NAME::->new( name => 'Associative', file => $file, line => __LINE__ ),
    Abstraction => NAME::->new( name => 'Abstraction', file => $file, line => __LINE__ ),
    Integral => NAME::->new( name => 'Integral', file => $file, line => __LINE__ ),
    Ordering => NAME::->new( name => 'Ordering', file => $file, line => __LINE__ ),
    KeyExtractor => NAME::->new( name => 'KeyExtractor', file => $file, line => __LINE__ ),
    Comparator => NAME::->new( name => 'Comparator', file => $file, line => __LINE__ ),
    OrderingPair => NAME::->new( name => 'OrderingPair', file => $file, line => __LINE__ ),

    Instant => NAME::->new( name => 'Instant', file => $file, line => __LINE__ ),
    Duration => NAME::->new( name => 'Duration', file => $file, line => __LINE__ ),

    IO => NAME::->new( name => 'IO', file => $file, line => __LINE__ ),

    KitchenSink => NAME::->new( name => 'KitchenSink', file => $file, line => __LINE__ ),

    '&WHAT' => NAME::->new( name => '&WHAT', file => $file, line => __LINE__ ),
    '&WHERE' => NAME::->new( name => '&WHERE', file => $file, line => __LINE__ ),
    '&HOW' => NAME::->new( name => '&HOW', file => $file, line => __LINE__ ),
    '&WHICH' => NAME::->new( name => '&WHICH', file => $file, line => __LINE__ ),
    '&VAR' => NAME::->new( name => '&VAR', file => $file, line => __LINE__ ),
    '&WHO' => NAME::->new( name => '&WHO', file => $file, line => __LINE__ ),
    '&WHENCE' => NAME::->new( name => '&WHENCE', file => $file, line => __LINE__ ),
    '&new' => NAME::->new( name => '&new', file => $file, line => __LINE__ ),
    '&HOW' => NAME::->new( name => '&HOW', file => $file, line => __LINE__ ),
    '&fail' => NAME::->new( name => '&fail', file => $file, line => __LINE__ ),
    '&temp' => NAME::->new( name => '&temp', file => $file, line => __LINE__ ),
    '&let' => NAME::->new( name => '&let', file => $file, line => __LINE__ ),
    '&any' => NAME::->new( name => '&any', file => $file, line => __LINE__ ),
    '&all' => NAME::->new( name => '&all', file => $file, line => __LINE__ ),
    '&none' => NAME::->new( name => '&none', file => $file, line => __LINE__ ),
    '&one' => NAME::->new( name => '&one', file => $file, line => __LINE__ ),
    '&not' => NAME::->new( name => '&not', file => $file, line => __LINE__ ),
    '&true' => NAME::->new( name => '&true', file => $file, line => __LINE__ ),
    '&next' => NAME::->new( name => '&next', file => $file, line => __LINE__ ),
    '&last' => NAME::->new( name => '&last', file => $file, line => __LINE__ ),
    '&redo' => NAME::->new( name => '&redo', file => $file, line => __LINE__ ),
    '&break' => NAME::->new( name => '&break', file => $file, line => __LINE__ ),
    '&goto' => NAME::->new( name => '&goto', file => $file, line => __LINE__ ),

    '&die' => NAME::->new( name => '&die', file => $file, line => __LINE__ ),
    '&exit' => NAME::->new( name => '&exit', file => $file, line => __LINE__ ),
    '&warn' => NAME::->new( name => '&warn', file => $file, line => __LINE__ ),
    '&caller' => NAME::->new( name => '&caller', file => $file, line => __LINE__ ),
    '&want' => NAME::->new( name => '&want', file => $file, line => __LINE__ ),
    '&eval' => NAME::->new( name => '&eval', file => $file, line => __LINE__ ),
    '&evalfile' => NAME::->new( name => '&evalfile', file => $file, line => __LINE__ ),
    '&callsame' => NAME::->new( name => '&callsame', file => $file, line => __LINE__ ),
    '&callwith' => NAME::->new( name => '&callwith', file => $file, line => __LINE__ ),
    '&nextsame' => NAME::->new( name => '&nextsame', file => $file, line => __LINE__ ),
    '&nextwith' => NAME::->new( name => '&nextwith', file => $file, line => __LINE__ ),
    '&lastcall' => NAME::->new( name => '&lastcall', file => $file, line => __LINE__ ),
    '&defined' => NAME::->new( name => '&defined', file => $file, line => __LINE__ ),
    '&undefine' => NAME::->new( name => '&undefine', file => $file, line => __LINE__ ),
    '&item' => NAME::->new( name => '&item', file => $file, line => __LINE__ ),
    '&list' => NAME::->new( name => '&list', file => $file, line => __LINE__ ),
    '&slice' => NAME::->new( name => '&slice', file => $file, line => __LINE__ ),
    '&eager' => NAME::->new( name => '&eager', file => $file, line => __LINE__ ),
    '&hyper' => NAME::->new( name => '&hyper', file => $file, line => __LINE__ ),

    '&cat' => NAME::->new( name => '&cat', file => $file, line => __LINE__ ),
    '&classify' => NAME::->new( name => '&classify', file => $file, line => __LINE__ ),
    '&quotemeta' => NAME::->new( name => '&quotemeta', file => $file, line => __LINE__ ),
    '&chr' => NAME::->new( name => '&chr', file => $file, line => __LINE__ ),
    '&ord' => NAME::->new( name => '&ord', file => $file, line => __LINE__ ),
    '&p5chop' => NAME::->new( name => '&p5chop', file => $file, line => __LINE__ ),
    '&chop' => NAME::->new( name => '&chop', file => $file, line => __LINE__ ),
    '&p5chomp' => NAME::->new( name => '&p5chomp', file => $file, line => __LINE__ ),
    '&chomp' => NAME::->new( name => '&chomp', file => $file, line => __LINE__ ),
    '&trim' => NAME::->new( name => '&trim', file => $file, line => __LINE__ ),
    '&trim_start' => NAME::->new( name => '&trim_start', file => $file, line => __LINE__ ),
    '&trim_end' => NAME::->new( name => '&trim_end', file => $file, line => __LINE__ ),
    '&index' => NAME::->new( name => '&index', file => $file, line => __LINE__ ),
    '&rindex' => NAME::->new( name => '&rindex', file => $file, line => __LINE__ ),
    '&substr' => NAME::->new( name => '&substr', file => $file, line => __LINE__ ),
    '&join' => NAME::->new( name => '&join', file => $file, line => __LINE__ ),
    '&split' => NAME::->new( name => '&split', file => $file, line => __LINE__ ),
    '&comb' => NAME::->new( name => '&comb', file => $file, line => __LINE__ ),
    '&pack' => NAME::->new( name => '&pack', file => $file, line => __LINE__ ),
    '&unpack' => NAME::->new( name => '&unpack', file => $file, line => __LINE__ ),
    '&uc' => NAME::->new( name => '&uc', file => $file, line => __LINE__ ),
    '&ucfirst' => NAME::->new( name => '&ucfirst', file => $file, line => __LINE__ ),
    '&lc' => NAME::->new( name => '&lc', file => $file, line => __LINE__ ),
    '&lcfirst' => NAME::->new( name => '&lcfirst', file => $file, line => __LINE__ ),
    '&normalize' => NAME::->new( name => '&normalize', file => $file, line => __LINE__ ),
    '&nfc' => NAME::->new( name => '&nfc', file => $file, line => __LINE__ ),
    '&nfd' => NAME::->new( name => '&nfd', file => $file, line => __LINE__ ),
    '&nfkc' => NAME::->new( name => '&nfkc', file => $file, line => __LINE__ ),
    '&nfkd' => NAME::->new( name => '&nfkd', file => $file, line => __LINE__ ),
    '&samecase' => NAME::->new( name => '&samecase', file => $file, line => __LINE__ ),
    '&sameaccent' => NAME::->new( name => '&sameaccent', file => $file, line => __LINE__ ),
    '&capitalize' => NAME::->new( name => '&capitalize', file => $file, line => __LINE__ ),
    '&chars' => NAME::->new( name => '&chars', file => $file, line => __LINE__ ),
    '&graphs' => NAME::->new( name => '&graphs', file => $file, line => __LINE__ ),
    '&codes' => NAME::->new( name => '&codes', file => $file, line => __LINE__ ),
    '&bytes' => NAME::->new( name => '&bytes', file => $file, line => __LINE__ ),

    '&say' => NAME::->new( name => '&say', file => $file, line => __LINE__ ),
    '&print' => NAME::->new( name => '&print', file => $file, line => __LINE__ ),
    '&open' => NAME::->new( name => '&open', file => $file, line => __LINE__ ),
    '&close' => NAME::->new( name => '&close', file => $file, line => __LINE__ ),
    '&printf' => NAME::->new( name => '&printf', file => $file, line => __LINE__ ),
    '&sprintf' => NAME::->new( name => '&sprintf', file => $file, line => __LINE__ ),
    '&unlink' => NAME::->new( name => '&unlink', file => $file, line => __LINE__ ),
    '&link' => NAME::->new( name => '&link', file => $file, line => __LINE__ ),
    '&symlink' => NAME::->new( name => '&symlink', file => $file, line => __LINE__ ),
    '&elems' => NAME::->new( name => '&elems', file => $file, line => __LINE__ ),
    '&end' => NAME::->new( name => '&end', file => $file, line => __LINE__ ),
    '&grep' => NAME::->new( name => '&grep', file => $file, line => __LINE__ ),
    '&map' => NAME::->new( name => '&map', file => $file, line => __LINE__ ),
    '&first' => NAME::->new( name => '&first', file => $file, line => __LINE__ ),
    '&reduce' => NAME::->new( name => '&reduce', file => $file, line => __LINE__ ),
    '&sort' => NAME::->new( name => '&sort', file => $file, line => __LINE__ ),
    '&min' => NAME::->new( name => '&min', file => $file, line => __LINE__ ),
    '&max' => NAME::->new( name => '&max', file => $file, line => __LINE__ ),
    '&uniq' => NAME::->new( name => '&uniq', file => $file, line => __LINE__ ),
    '&push' => NAME::->new( name => '&push', file => $file, line => __LINE__ ),
    '&reverse' => NAME::->new( name => '&reverse', file => $file, line => __LINE__ ),
    '&flip' => NAME::->new( name => '&flip', file => $file, line => __LINE__ ),
    '&take' => NAME::->new( name => '&take', file => $file, line => __LINE__ ),
    '&splice' => NAME::->new( name => '&splice', file => $file, line => __LINE__ ),
    '&slurp' => NAME::->new( name => '&slurp', file => $file, line => __LINE__ ),
    '&get' => NAME::->new( name => '&get', file => $file, line => __LINE__ ),
    '&lines' => NAME::->new( name => '&lines', file => $file, line => __LINE__ ),
    '&getc' => NAME::->new( name => '&getc', file => $file, line => __LINE__ ),
    '&prompt' => NAME::->new( name => '&prompt', file => $file, line => __LINE__ ),
    '&chdir' => NAME::->new( name => '&chdir', file => $file, line => __LINE__ ),
    '&chmod' => NAME::->new( name => '&chmod', file => $file, line => __LINE__ ),

    '&zip' => NAME::->new( name => '&zip', file => $file, line => __LINE__ ),
    '&each' => NAME::->new( name => '&each', file => $file, line => __LINE__ ),
    '&roundrobin' => NAME::->new( name => '&roundrobin', file => $file, line => __LINE__ ),
    '&caller' => NAME::->new( name => '&caller', file => $file, line => __LINE__ ),
    '&return' => NAME::->new( name => '&return', file => $file, line => __LINE__ ),
    '&leave' => NAME::->new( name => '&leave', file => $file, line => __LINE__ ),
    '&make' => NAME::->new( name => '&make', file => $file, line => __LINE__ ),
    '&pop' => NAME::->new( name => '&pop', file => $file, line => __LINE__ ),
    '&shift' => NAME::->new( name => '&shift', file => $file, line => __LINE__ ),
    '&unshift' => NAME::->new( name => '&unshift', file => $file, line => __LINE__ ),
    '&reduce' => NAME::->new( name => '&reduce', file => $file, line => __LINE__ ),
    '&keys' => NAME::->new( name => '&keys', file => $file, line => __LINE__ ),
    '&values' => NAME::->new( name => '&values', file => $file, line => __LINE__ ),
    '&hash' => NAME::->new( name => '&hash', file => $file, line => __LINE__ ),
    '&kv' => NAME::->new( name => '&kv', file => $file, line => __LINE__ ),
    '&key' => NAME::->new( name => '&key', file => $file, line => __LINE__ ),
    '&value' => NAME::->new( name => '&value', file => $file, line => __LINE__ ),
    '&pairs' => NAME::->new( name => '&pairs', file => $file, line => __LINE__ ),
    '&pair' => NAME::->new( name => '&pair', file => $file, line => __LINE__ ),
    '&enum' => NAME::->new( name => '&enum', file => $file, line => __LINE__ ),

    '&sign' => NAME::->new( name => '&sign', file => $file, line => __LINE__ ),
    '&abs' => NAME::->new( name => '&abs', file => $file, line => __LINE__ ),
    '&floor' => NAME::->new( name => '&floor', file => $file, line => __LINE__ ),
    '&ceiling' => NAME::->new( name => '&ceiling', file => $file, line => __LINE__ ),
    '&round' => NAME::->new( name => '&round', file => $file, line => __LINE__ ),
    '&truncate' => NAME::->new( name => '&truncate', file => $file, line => __LINE__ ),
    '&exp' => NAME::->new( name => '&exp', file => $file, line => __LINE__ ),
    '&log' => NAME::->new( name => '&log', file => $file, line => __LINE__ ),
    '&log10' => NAME::->new( name => '&log10', file => $file, line => __LINE__ ),
    '&sqrt' => NAME::->new( name => '&sqrt', file => $file, line => __LINE__ ),
    '&roots' => NAME::->new( name => '&roots', file => $file, line => __LINE__ ),
    '&rand' => NAME::->new( name => '&rand', file => $file, line => __LINE__ ),
    '&srand' => NAME::->new( name => '&srand', file => $file, line => __LINE__ ),
    '&pick' => NAME::->new( name => '&pick', file => $file, line => __LINE__ ),
    '&cis' => NAME::->new( name => '&cis', file => $file, line => __LINE__ ),
    '&unpolar' => NAME::->new( name => '&unpolar', file => $file, line => __LINE__ ),

    '&sin' => NAME::->new( name => '&sin', file => $file, line => __LINE__ ),
    '&cos' => NAME::->new( name => '&cos', file => $file, line => __LINE__ ),
    '&tan' => NAME::->new( name => '&tan', file => $file, line => __LINE__ ),
    '&asin' => NAME::->new( name => '&asin', file => $file, line => __LINE__ ),
    '&acos' => NAME::->new( name => '&acos', file => $file, line => __LINE__ ),
    '&atan' => NAME::->new( name => '&atan', file => $file, line => __LINE__ ),
    '&sec' => NAME::->new( name => '&sec', file => $file, line => __LINE__ ),
    '&cosec' => NAME::->new( name => '&cosec', file => $file, line => __LINE__ ),
    '&cotan' => NAME::->new( name => '&cotan', file => $file, line => __LINE__ ),
    '&asec' => NAME::->new( name => '&asec', file => $file, line => __LINE__ ),
    '&acosec' => NAME::->new( name => '&acosec', file => $file, line => __LINE__ ),
    '&acotan' => NAME::->new( name => '&acotan', file => $file, line => __LINE__ ),
    '&sinh' => NAME::->new( name => '&sinh', file => $file, line => __LINE__ ),
    '&cosh' => NAME::->new( name => '&cosh', file => $file, line => __LINE__ ),
    '&tanh' => NAME::->new( name => '&tanh', file => $file, line => __LINE__ ),
    '&asinh' => NAME::->new( name => '&asinh', file => $file, line => __LINE__ ),
    '&acosh' => NAME::->new( name => '&acosh', file => $file, line => __LINE__ ),
    '&atanh' => NAME::->new( name => '&atanh', file => $file, line => __LINE__ ),
    '&sech' => NAME::->new( name => '&sech', file => $file, line => __LINE__ ),
    '&cosech' => NAME::->new( name => '&cosech', file => $file, line => __LINE__ ),
    '&cotanh' => NAME::->new( name => '&cotanh', file => $file, line => __LINE__ ),
    '&asech' => NAME::->new( name => '&asech', file => $file, line => __LINE__ ),
    '&acosech' => NAME::->new( name => '&acosech', file => $file, line => __LINE__ ),
    '&acotanh' => NAME::->new( name => '&acotanh', file => $file, line => __LINE__ ),
    '&atan2' => NAME::->new( name => '&atan2', file => $file, line => __LINE__ ),

    '&gmtime' => NAME::->new( name => '&gmtime', file => $file, line => __LINE__ ),
    '&localtime' => NAME::->new( name => '&localtime', file => $file, line => __LINE__ ),
    '&time' => NAME::->new( name => '&time', file => $file, line => __LINE__ ),
    '&times' => NAME::->new( name => '&times', file => $file, line => __LINE__ ),
    '&gethost' => NAME::->new( name => '&gethost', file => $file, line => __LINE__ ),
    '&getpw' => NAME::->new( name => '&getpw', file => $file, line => __LINE__ ),
    '&chroot' => NAME::->new( name => '&chroot', file => $file, line => __LINE__ ),
    '&getlogin' => NAME::->new( name => '&getlogin', file => $file, line => __LINE__ ),
    '&run' => NAME::->new( name => '&run', file => $file, line => __LINE__ ),
    '&runinstead' => NAME::->new( name => '&runinstead', file => $file, line => __LINE__ ),
    '&fork' => NAME::->new( name => '&fork', file => $file, line => __LINE__ ),
    '&wait' => NAME::->new( name => '&wait', file => $file, line => __LINE__ ),
    '&kill' => NAME::->new( name => '&kill', file => $file, line => __LINE__ ),
    '&sleep' => NAME::->new( name => '&sleep', file => $file, line => __LINE__ ),
);

sub fixup {
    my $stash = shift;
    return unless $stash;
    no strict 'refs';
    for my $k (keys %$stash) {
	my $v = $stash->{$k};
	if ($k =~ /^\w/) {
	    next if $k eq 'EXPORT::' or $k =~ /^_/;
	    $stash->{"&$k"} = $stash->{$k} if $k =~ /^\w+$/;
	    fixup($v);
	}
    }
    for my $k (keys %$stash) {
	next if $k =~ /^_/;
	my $v = $stash->{$k};
	if ($v->{export}) {
	    $stash->{'EXPORT::'}{$v->{export}}{$k} = $v;
	}
    }
}
fixup($core);
$core;