Sub-Multi-Tiny v0.000013 Perl 5 v5.8.9 MSWin32-x86-multi-thread

Status
Pass
From
NONAME
Dist
Sub-Multi-Tiny v0.000013
Platform
Perl 5 v5.8.9 MSWin32-x86-multi-thread
Date
2022-10-30 07:31:00
ID
236e510c-6dfd-1014-a3b4-f00d032c038b
This distribution has been tested as part of the CPAN Testers
project, supporting the Perl programming language.  See
http://wiki.cpantesters.org/ for more information or email
questions to cpan-testers-discuss@perl.org


--
Dear Christopher White,

This is a computer-generated report for Sub-Multi-Tiny-0.000013
on perl 5.8.9, created by CPAN-Reporter-1.2018.

Thank you for uploading your work to CPAN.  Congratulations!
All tests were successful.

Sections of this report:

    * Tester comments
    * Program output
    * Prerequisites
    * Environment and other context

------------------------------
TESTER COMMENTS
------------------------------

Additional comments from tester:

none provided

------------------------------
PROGRAM OUTPUT
------------------------------

Output from 'C:\Strawberry\perl\bin\perl.exe ./Build test':

# Testing Sub::Multi::Tiny 0.000013, Perl 5.008009, C:\Strawberry\perl\bin\perl.exe
t/00_compile.t ............. ok
# ########################################
# t/10_lexer.t
t/10_lexer.t ............... ok
# ########################################
# t/20_parser.t
t/20_parser.t .............. ok
# ########################################
# t/30_synopsis.t
# Target main::my_multi package Sub::Multi::Tiny (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:144)
# main::my_multi using dispatcher Sub::Multi::Tiny::Dispatcher::Default (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:180)
# Making main::my_multi() (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:184)
# Making main::my_multi attr M (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:202)
# M code:
# #line 231 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm"
# package main::my_multi;
# 
# #line 237 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm"
# use Attribute::Handlers;
# use Sub::Multi::Tiny::Util qw(_hlog);
# ##use Data::Dumper;
# 
# sub M :ATTR(CODE,RAWDATA) {
#     _hlog { require Data::Dumper;
#             'In ', __PACKAGE__, "::M: \n",
#             Data::Dumper->Dump([\@_], ['attr_args']) } 2;
# 
#     my ($package, $symbol, $referent, $attr, $data, $phase,
#         $filename, $linenum) = @_;
#     my $funcname = "$package\::" . *{$symbol}{NAME};
# 
#     _hlog {     # Code from Attribute::Handlers, license perl_5
#         ref($referent),
#         $funcname,
#         "($referent)", "was just declared",
#         "and ascribed the ${attr} attribute",
#         "with data ($data)",
#         "in phase $phase",
#         "in file $filename at line $linenum"
#     } 2;
# 
# #line 264 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm"
#     die 'Dispatchers already created - please file a bug report'
#         if Sub::Multi::Tiny::_dispatchers_created();
# 
#     my $multi_def = $_multisubs{'main::my_multi'};
# 
# #line 272 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm"
#     my $hrSig = Sub::Multi::Tiny::_parse_arglist($data, $funcname);
#     Sub::Multi::Tiny::_check_and_inflate_sig($hrSig, $multi_def,
#         $funcname, $package, $filename, $linenum);
# 
# #line 278 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm"
# 
# #line 282 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm"
#     my $info = {
#         code => $referent,
#         args => $hrSig->{parms},    # TODO remove eventually
#         sig => $hrSig,
# 
#         # For error messages
#         filename => $filename,
#         linenum => $linenum,
#         candidate_name => $funcname
#     };
#     push @{$multi_def->{impls}}, $info;
# 
# } #M
# 
 (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:297)
# Making main::my_multi::my_multi stub (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:212)
# In  main::my_multi ::M: 
#  $attr_args = []; (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:244)
# CODE main::my_multi::first (CODE(0x252f924)) was just declared and ascribed the M attribute with data ($foo, $bar) in phase CHECK in file t/30_synopsis.t at line 11 (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:258)
# Parsing args for main::my_multi::first: $foo, $bar (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:221)
# In  main::my_multi ::M: 
#  $attr_args = []; (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:244)
# CODE main::my_multi::second (CODE(0x2521e8c)) was just declared and ascribed the M attribute with data ($foo) in phase CHECK in file t/30_synopsis.t at line 15 (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:258)
# Parsing args for main::my_multi::second: $foo (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:221)
# Sub::Multi::Tiny in INIT block (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:96)
# Making default dispatcher for:  $multisub = {
#   'impls' => [
#     {
#       'sig' => {
#         'seen' => '',
#         'parms' => [
#           {
#             'named' => '',
#             'reqd' => 1,
#             'name' => '$foo'
#           },
#           {
#             'named' => '',
#             'reqd' => 1,
#             'name' => '$bar'
#           }
#         ]
#       },
#       'filename' => 't/30_synopsis.t',
#       'candidate_name' => 'main::my_multi::first',
#       'linenum' => 11,
#       'args' => $multisub->{'impls'}[0]{'sig'}{'parms'},
#       'code' => sub { "DUMMY" }
#     },
#     {
#       'sig' => {
#         'seen' => '',
#         'parms' => [
#           {
#             'named' => '',
#             'reqd' => 1,
#             'name' => '$foo'
#           }
#         ]
#       },
#       'filename' => 't/30_synopsis.t',
#       'candidate_name' => 'main::my_multi::second',
#       'linenum' => 15,
#       'args' => $multisub->{'impls'}[1]{'sig'}{'parms'},
#       'code' => sub { "DUMMY" }
#     }
#   ],
#   'used_by' => 'main',
#   'subname' => 'my_multi',
#   'possible_params' => {
#     '$foo' => 1,
#     '$bar' => 1
#   },
#   'defined_in' => 'main::my_multi'
# }; (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Dispatcher/Default.pm:50)
# $mpc_defined_in = 'main::my_multi';
#  $mpc_impl = {
#   'sig' => {
#     'seen' => '',
#     'parms' => [
#       {
#         'named' => '',
#         'reqd' => 1,
#         'name' => '$foo'
#       },
#       {
#         'named' => '',
#         'reqd' => 1,
#         'name' => '$bar'
#       }
#     ]
#   },
#   'filename' => 't/30_synopsis.t',
#   'candidate_name' => 'main::my_multi::first',
#   'linenum' => 11,
#   'args' => $mpc_impl->{'sig'}{'parms'},
#   'code' => sub { "DUMMY" }
# }; (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm:273)
# Copier for main::my_multi::first():
#  #line 276 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
# use strict;
# use warnings;
# sub {
# 
# #line 283 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#     if( $] lt '5.018' || $VERBOSE > 1) {
#         require Data::Dumper;
#         require Test::More;
#         Test::More::diag(sprintf("Positional copier invocation %d:\n%s",
#             ++$Sub::Multi::Tiny::Util::_positional_copier_invocation_number,
#             Data::Dumper->Dump([\@_],['copier_args'])));
#     }
# 
# #line 293 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#     (
# 
# #line 303 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#         $main::my_multi::foo
# ,
# #line 303 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#         $main::my_multi::bar
# #line 306 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#     ) = @_;
# 
#     if( $] lt '5.018' || $VERBOSE > 1) {
#         Test::More::diag(sprintf("After positional copier invocation %d:",
#             $Sub::Multi::Tiny::Util::_positional_copier_invocation_number));
#         Test::More::diag(join "\n", map {
#             sprintf("%s = %s", $_, eval($_))
#         } @vars);
#     }
# 
# } #copier
 (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm:319)
# $mpc_defined_in = 'main::my_multi';
#  $mpc_impl = {
#   'sig' => {
#     'seen' => '',
#     'parms' => [
#       {
#         'named' => '',
#         'reqd' => 1,
#         'name' => '$foo'
#       }
#     ]
#   },
#   'filename' => 't/30_synopsis.t',
#   'candidate_name' => 'main::my_multi::second',
#   'linenum' => 15,
#   'args' => $mpc_impl->{'sig'}{'parms'},
#   'code' => sub { "DUMMY" }
# }; (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm:273)
# Copier for main::my_multi::second():
#  #line 276 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
# use strict;
# use warnings;
# sub {
# 
# #line 283 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#     if( $] lt '5.018' || $VERBOSE > 1) {
#         require Data::Dumper;
#         require Test::More;
#         Test::More::diag(sprintf("Positional copier invocation %d:\n%s",
#             ++$Sub::Multi::Tiny::Util::_positional_copier_invocation_number,
#             Data::Dumper->Dump([\@_],['copier_args'])));
#     }
# 
# #line 293 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#     (
# 
# #line 303 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#         $main::my_multi::foo
# #line 306 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#     ) = @_;
# 
#     if( $] lt '5.018' || $VERBOSE > 1) {
#         Test::More::diag(sprintf("After positional copier invocation %d:",
#             $Sub::Multi::Tiny::Util::_positional_copier_invocation_number));
#         Test::More::diag(join "\n", map {
#             sprintf("%s = %s", $_, eval($_))
#         } @vars);
#     }
# 
# } #copier
 (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm:319)
# _complete_dispatcher making Sub::Multi::Tiny::Dispatcher::Default dispatcher with args: $multisub = {
#   'impls' => [
#     {
#       'sig' => {
#         'seen' => '',
#         'parms' => [
#           {
#             'named' => '',
#             'reqd' => 1,
#             'name' => '$foo'
#           },
#           {
#             'named' => '',
#             'reqd' => 1,
#             'name' => '$bar'
#           }
#         ]
#       },
#       'filename' => 't/30_synopsis.t',
#       'candidate_name' => 'main::my_multi::first',
#       'linenum' => 11,
#       'args' => $multisub->{'impls'}[0]{'sig'}{'parms'},
#       'code' => sub { "DUMMY" }
#     },
#     {
#       'sig' => {
#         'seen' => '',
#         'parms' => [
#           {
#             'named' => '',
#             'reqd' => 1,
#             'name' => '$foo'
#           }
#         ]
#       },
#       'filename' => 't/30_synopsis.t',
#       'candidate_name' => 'main::my_multi::second',
#       'linenum' => 15,
#       'args' => $multisub->{'impls'}[1]{'sig'}{'parms'},
#       'code' => sub { "DUMMY" }
#     }
#   ],
#   'used_by' => 'main',
#   'subname' => 'my_multi',
#   'possible_params' => {
#     '$foo' => 1,
#     '$bar' => 1
#   },
#   'defined_in' => 'main::my_multi'
# };
#  $inner_code = '#line 74 "C:\\strawberry\\cpan\\build\\Sub-Multi-Tiny-0.000013-0\\blib\\lib/Sub/Multi/Tiny/Dispatcher/Default.pm"
#             # Find the candidate
#             my $arity = scalar @_;
#             $candidate = $data[0]->{$arity};
#             die "No candidate found for main::my_multi() with arity " .
#                 (scalar @_) unless $candidate;
#             $copier = $data[1]->{$arity};
# 
# ';
#  $data = {
#   '1' => $multisub->{'impls'}[1]{'code'},
#   '2' => $multisub->{'impls'}[0]{'code'}
# };
#  $VAR4 = {
#   '1' => sub { "DUMMY" },
#   '2' => sub { "DUMMY" }
# }; (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm:200)
# Sub::Multi::Tiny::Dispatcher::Default dispatcher for main::my_multi():
# #line 204 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#         use strict;
#         use warnings;
#         sub {
#             # Find the candidate
#             my ($candidate, $copier);
# 
# #line 74 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Dispatcher/Default.pm"
#             # Find the candidate
#             my $arity = scalar @_;
#             $candidate = $data[0]->{$arity};
#             die "No candidate found for main::my_multi() with arity " .
#                 (scalar @_) unless $candidate;
#             $copier = $data[1]->{$arity};
# 
# 
# 
#             # Save the present values of the parameters
# 
# #line 219 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
# my $saved_foo = $main::my_multi::foo;
# 
# #line 219 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
# my $saved_bar = $main::my_multi::bar;
# 
# #line 225 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#             # Create the guard
#             my $guard = Guard::guard {
# 
# #line 221 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
# $main::my_multi::foo = $saved_foo;
# 
# #line 221 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
# $main::my_multi::bar = $saved_bar;
# 
# 
# 
#             }; #End of guard
# 
# #line 234 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
# 
#             # Copy the parameters into the variables the candidate
#             # will access them from
#             &$copier;   # $copier gets @_ automatically
# 
#             # Pass the guard so the parameters will be reset once \$candidate
#             # finishes running.
#             @_ = ($guard);
# 
#             # Invoke the selected candidate
#             goto &$candidate;
#         } #dispatcher
# 
 (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm:248)
# Positional copier invocation 1:
# $copier_args = [
#   2,
#   5
# ];
# After positional copier invocation 1:
# $main::my_multi::foo = 2
# $main::my_multi::bar = 5
# Positional copier invocation 2:
# $copier_args = [
#   5,
#   2
# ];
# After positional copier invocation 2:
# $main::my_multi::foo = 5
# $main::my_multi::bar = 2
# Positional copier invocation 3:
# $copier_args = [
#   1337
# ];
# After positional copier invocation 3:
# $main::my_multi::foo = 1337
t/30_synopsis.t ............ ok
# ########################################
# t/31_ambiguous_dispatch.t
# Target main::my_multi package Sub::Multi::Tiny (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:144)
# main::my_multi using dispatcher Sub::Multi::Tiny::Dispatcher::Default (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:180)
# Making main::my_multi() (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:184)
# Making main::my_multi attr M (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:202)
# M code:
# #line 231 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm"
# package main::my_multi;
# 
# #line 237 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm"
# use Attribute::Handlers;
# use Sub::Multi::Tiny::Util qw(_hlog);
# ##use Data::Dumper;
# 
# sub M :ATTR(CODE,RAWDATA) {
#     _hlog { require Data::Dumper;
#             'In ', __PACKAGE__, "::M: \n",
#             Data::Dumper->Dump([\@_], ['attr_args']) } 2;
# 
#     my ($package, $symbol, $referent, $attr, $data, $phase,
#         $filename, $linenum) = @_;
#     my $funcname = "$package\::" . *{$symbol}{NAME};
# 
#     _hlog {     # Code from Attribute::Handlers, license perl_5
#         ref($referent),
#         $funcname,
#         "($referent)", "was just declared",
#         "and ascribed the ${attr} attribute",
#         "with data ($data)",
#         "in phase $phase",
#         "in file $filename at line $linenum"
#     } 2;
# 
# #line 264 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm"
#     die 'Dispatchers already created - please file a bug report'
#         if Sub::Multi::Tiny::_dispatchers_created();
# 
#     my $multi_def = $_multisubs{'main::my_multi'};
# 
# #line 272 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm"
#     my $hrSig = Sub::Multi::Tiny::_parse_arglist($data, $funcname);
#     Sub::Multi::Tiny::_check_and_inflate_sig($hrSig, $multi_def,
#         $funcname, $package, $filename, $linenum);
# 
# #line 278 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm"
# 
# #line 282 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm"
#     my $info = {
#         code => $referent,
#         args => $hrSig->{parms},    # TODO remove eventually
#         sig => $hrSig,
# 
#         # For error messages
#         filename => $filename,
#         linenum => $linenum,
#         candidate_name => $funcname
#     };
#     push @{$multi_def->{impls}}, $info;
# 
# } #M
# 
 (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:297)
# Making main::my_multi::my_multi stub (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:212)
# In  main::my_multi ::M: 
#  $attr_args = []; (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:244)
# CODE main::my_multi::first (CODE(0x25be1c4)) was just declared and ascribed the M attribute with data ($foo, $bar) in phase CHECK in file t/31_ambiguous_dispatch.t at line 13 (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:258)
# Parsing args for main::my_multi::first: $foo, $bar (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:221)
# In  main::my_multi ::M: 
#  $attr_args = []; (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:244)
# CODE main::my_multi::second (CODE(0x25c58ec)) was just declared and ascribed the M attribute with data ($foo) in phase CHECK in file t/31_ambiguous_dispatch.t at line 17 (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:258)
# Parsing args for main::my_multi::second: $foo (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:221)
# Sub::Multi::Tiny in INIT block (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:96)
# Making default dispatcher for:  $multisub = {
#   'impls' => [
#     {
#       'sig' => {
#         'seen' => '',
#         'parms' => [
#           {
#             'named' => '',
#             'reqd' => 1,
#             'name' => '$foo'
#           },
#           {
#             'named' => '',
#             'reqd' => 1,
#             'name' => '$bar'
#           }
#         ]
#       },
#       'filename' => 't/31_ambiguous_dispatch.t',
#       'candidate_name' => 'main::my_multi::first',
#       'linenum' => 13,
#       'args' => $multisub->{'impls'}[0]{'sig'}{'parms'},
#       'code' => sub { "DUMMY" }
#     },
#     {
#       'sig' => {
#         'seen' => '',
#         'parms' => [
#           {
#             'named' => '',
#             'reqd' => 1,
#             'name' => '$foo'
#           }
#         ]
#       },
#       'filename' => 't/31_ambiguous_dispatch.t',
#       'candidate_name' => 'main::my_multi::second',
#       'linenum' => 17,
#       'args' => $multisub->{'impls'}[1]{'sig'}{'parms'},
#       'code' => sub { "DUMMY" }
#     }
#   ],
#   'used_by' => 'main',
#   'subname' => 'my_multi',
#   'possible_params' => {
#     '$foo' => 1,
#     '$bar' => 1
#   },
#   'defined_in' => 'main::my_multi'
# }; (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Dispatcher/Default.pm:50)
# $mpc_defined_in = 'main::my_multi';
#  $mpc_impl = {
#   'sig' => {
#     'seen' => '',
#     'parms' => [
#       {
#         'named' => '',
#         'reqd' => 1,
#         'name' => '$foo'
#       },
#       {
#         'named' => '',
#         'reqd' => 1,
#         'name' => '$bar'
#       }
#     ]
#   },
#   'filename' => 't/31_ambiguous_dispatch.t',
#   'candidate_name' => 'main::my_multi::first',
#   'linenum' => 13,
#   'args' => $mpc_impl->{'sig'}{'parms'},
#   'code' => sub { "DUMMY" }
# }; (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm:273)
# Copier for main::my_multi::first():
#  #line 276 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
# use strict;
# use warnings;
# sub {
# 
# #line 283 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#     if( $] lt '5.018' || $VERBOSE > 1) {
#         require Data::Dumper;
#         require Test::More;
#         Test::More::diag(sprintf("Positional copier invocation %d:\n%s",
#             ++$Sub::Multi::Tiny::Util::_positional_copier_invocation_number,
#             Data::Dumper->Dump([\@_],['copier_args'])));
#     }
# 
# #line 293 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#     (
# 
# #line 303 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#         $main::my_multi::foo
# ,
# #line 303 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#         $main::my_multi::bar
# #line 306 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#     ) = @_;
# 
#     if( $] lt '5.018' || $VERBOSE > 1) {
#         Test::More::diag(sprintf("After positional copier invocation %d:",
#             $Sub::Multi::Tiny::Util::_positional_copier_invocation_number));
#         Test::More::diag(join "\n", map {
#             sprintf("%s = %s", $_, eval($_))
#         } @vars);
#     }
# 
# } #copier
 (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm:319)
# $mpc_defined_in = 'main::my_multi';
#  $mpc_impl = {
#   'sig' => {
#     'seen' => '',
#     'parms' => [
#       {
#         'named' => '',
#         'reqd' => 1,
#         'name' => '$foo'
#       }
#     ]
#   },
#   'filename' => 't/31_ambiguous_dispatch.t',
#   'candidate_name' => 'main::my_multi::second',
#   'linenum' => 17,
#   'args' => $mpc_impl->{'sig'}{'parms'},
#   'code' => sub { "DUMMY" }
# }; (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm:273)
# Copier for main::my_multi::second():
#  #line 276 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
# use strict;
# use warnings;
# sub {
# 
# #line 283 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#     if( $] lt '5.018' || $VERBOSE > 1) {
#         require Data::Dumper;
#         require Test::More;
#         Test::More::diag(sprintf("Positional copier invocation %d:\n%s",
#             ++$Sub::Multi::Tiny::Util::_positional_copier_invocation_number,
#             Data::Dumper->Dump([\@_],['copier_args'])));
#     }
# 
# #line 293 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#     (
# 
# #line 303 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#         $main::my_multi::foo
# #line 306 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#     ) = @_;
# 
#     if( $] lt '5.018' || $VERBOSE > 1) {
#         Test::More::diag(sprintf("After positional copier invocation %d:",
#             $Sub::Multi::Tiny::Util::_positional_copier_invocation_number));
#         Test::More::diag(join "\n", map {
#             sprintf("%s = %s", $_, eval($_))
#         } @vars);
#     }
# 
# } #copier
 (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm:319)
# _complete_dispatcher making Sub::Multi::Tiny::Dispatcher::Default dispatcher with args: $multisub = {
#   'impls' => [
#     {
#       'sig' => {
#         'seen' => '',
#         'parms' => [
#           {
#             'named' => '',
#             'reqd' => 1,
#             'name' => '$foo'
#           },
#           {
#             'named' => '',
#             'reqd' => 1,
#             'name' => '$bar'
#           }
#         ]
#       },
#       'filename' => 't/31_ambiguous_dispatch.t',
#       'candidate_name' => 'main::my_multi::first',
#       'linenum' => 13,
#       'args' => $multisub->{'impls'}[0]{'sig'}{'parms'},
#       'code' => sub { "DUMMY" }
#     },
#     {
#       'sig' => {
#         'seen' => '',
#         'parms' => [
#           {
#             'named' => '',
#             'reqd' => 1,
#             'name' => '$foo'
#           }
#         ]
#       },
#       'filename' => 't/31_ambiguous_dispatch.t',
#       'candidate_name' => 'main::my_multi::second',
#       'linenum' => 17,
#       'args' => $multisub->{'impls'}[1]{'sig'}{'parms'},
#       'code' => sub { "DUMMY" }
#     }
#   ],
#   'used_by' => 'main',
#   'subname' => 'my_multi',
#   'possible_params' => {
#     '$foo' => 1,
#     '$bar' => 1
#   },
#   'defined_in' => 'main::my_multi'
# };
#  $inner_code = '#line 74 "C:\\strawberry\\cpan\\build\\Sub-Multi-Tiny-0.000013-0\\blib\\lib/Sub/Multi/Tiny/Dispatcher/Default.pm"
#             # Find the candidate
#             my $arity = scalar @_;
#             $candidate = $data[0]->{$arity};
#             die "No candidate found for main::my_multi() with arity " .
#                 (scalar @_) unless $candidate;
#             $copier = $data[1]->{$arity};
# 
# ';
#  $data = {
#   '1' => $multisub->{'impls'}[1]{'code'},
#   '2' => $multisub->{'impls'}[0]{'code'}
# };
#  $VAR4 = {
#   '1' => sub { "DUMMY" },
#   '2' => sub { "DUMMY" }
# }; (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm:200)
# Sub::Multi::Tiny::Dispatcher::Default dispatcher for main::my_multi():
# #line 204 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#         use strict;
#         use warnings;
#         sub {
#             # Find the candidate
#             my ($candidate, $copier);
# 
# #line 74 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Dispatcher/Default.pm"
#             # Find the candidate
#             my $arity = scalar @_;
#             $candidate = $data[0]->{$arity};
#             die "No candidate found for main::my_multi() with arity " .
#                 (scalar @_) unless $candidate;
#             $copier = $data[1]->{$arity};
# 
# 
# 
#             # Save the present values of the parameters
# 
# #line 219 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
# my $saved_foo = $main::my_multi::foo;
# 
# #line 219 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
# my $saved_bar = $main::my_multi::bar;
# 
# #line 225 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#             # Create the guard
#             my $guard = Guard::guard {
# 
# #line 221 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
# $main::my_multi::foo = $saved_foo;
# 
# #line 221 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
# $main::my_multi::bar = $saved_bar;
# 
# 
# 
#             }; #End of guard
# 
# #line 234 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
# 
#             # Copy the parameters into the variables the candidate
#             # will access them from
#             &$copier;   # $copier gets @_ automatically
# 
#             # Pass the guard so the parameters will be reset once \$candidate
#             # finishes running.
#             @_ = ($guard);
# 
#             # Invoke the selected candidate
#             goto &$candidate;
#         } #dispatcher
# 
 (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm:248)
t/31_ambiguous_dispatch.t .. ok
# ########################################
# t/32_same_arity.t
t/32_same_arity.t .......... ok
# ########################################
# t/33_recursion.t
# Target main::pascal package Sub::Multi::Tiny (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:144)
# main::pascal using dispatcher Sub::Multi::Tiny::Dispatcher::Default (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:180)
# Making main::pascal() (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:184)
# Making main::pascal attr M (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:202)
# M code:
# #line 231 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm"
# package main::pascal;
# 
# #line 237 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm"
# use Attribute::Handlers;
# use Sub::Multi::Tiny::Util qw(_hlog);
# ##use Data::Dumper;
# 
# sub M :ATTR(CODE,RAWDATA) {
#     _hlog { require Data::Dumper;
#             'In ', __PACKAGE__, "::M: \n",
#             Data::Dumper->Dump([\@_], ['attr_args']) } 2;
# 
#     my ($package, $symbol, $referent, $attr, $data, $phase,
#         $filename, $linenum) = @_;
#     my $funcname = "$package\::" . *{$symbol}{NAME};
# 
#     _hlog {     # Code from Attribute::Handlers, license perl_5
#         ref($referent),
#         $funcname,
#         "($referent)", "was just declared",
#         "and ascribed the ${attr} attribute",
#         "with data ($data)",
#         "in phase $phase",
#         "in file $filename at line $linenum"
#     } 2;
# 
# #line 264 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm"
#     die 'Dispatchers already created - please file a bug report'
#         if Sub::Multi::Tiny::_dispatchers_created();
# 
#     my $multi_def = $_multisubs{'main::pascal'};
# 
# #line 272 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm"
#     my $hrSig = Sub::Multi::Tiny::_parse_arglist($data, $funcname);
#     Sub::Multi::Tiny::_check_and_inflate_sig($hrSig, $multi_def,
#         $funcname, $package, $filename, $linenum);
# 
# #line 278 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm"
# 
# #line 282 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm"
#     my $info = {
#         code => $referent,
#         args => $hrSig->{parms},    # TODO remove eventually
#         sig => $hrSig,
# 
#         # For error messages
#         filename => $filename,
#         linenum => $linenum,
#         candidate_name => $funcname
#     };
#     push @{$multi_def->{impls}}, $info;
# 
# } #M
# 
 (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:297)
# Making main::pascal::pascal stub (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:212)
# In  main::pascal ::M: 
#  $attr_args = []; (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:244)
# CODE main::pascal::main (CODE(0x2561aac)) was just declared and ascribed the M attribute with data ($n, $k) in phase CHECK in file t/33_recursion.t at line 14 (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:258)
# Parsing args for main::pascal::main: $n, $k (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:221)
# In  main::pascal ::M: 
#  $attr_args = []; (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:244)
# CODE main::pascal::base (CODE(0x2552014)) was just declared and ascribed the M attribute with data ($n) in phase CHECK in file t/33_recursion.t at line 18 (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:258)
# Parsing args for main::pascal::base: $n (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:221)
# Sub::Multi::Tiny in INIT block (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:96)
# Making default dispatcher for:  $multisub = {
#   'impls' => [
#     {
#       'sig' => {
#         'seen' => '',
#         'parms' => [
#           {
#             'named' => '',
#             'reqd' => 1,
#             'name' => '$n'
#           },
#           {
#             'named' => '',
#             'reqd' => 1,
#             'name' => '$k'
#           }
#         ]
#       },
#       'filename' => 't/33_recursion.t',
#       'candidate_name' => 'main::pascal::main',
#       'linenum' => 14,
#       'args' => $multisub->{'impls'}[0]{'sig'}{'parms'},
#       'code' => sub { "DUMMY" }
#     },
#     {
#       'sig' => {
#         'seen' => '',
#         'parms' => [
#           {
#             'named' => '',
#             'reqd' => 1,
#             'name' => '$n'
#           }
#         ]
#       },
#       'filename' => 't/33_recursion.t',
#       'candidate_name' => 'main::pascal::base',
#       'linenum' => 18,
#       'args' => $multisub->{'impls'}[1]{'sig'}{'parms'},
#       'code' => sub { "DUMMY" }
#     }
#   ],
#   'used_by' => 'main',
#   'subname' => 'pascal',
#   'possible_params' => {
#     '$k' => 1,
#     '$n' => 1
#   },
#   'defined_in' => 'main::pascal'
# }; (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Dispatcher/Default.pm:50)
# $mpc_defined_in = 'main::pascal';
#  $mpc_impl = {
#   'sig' => {
#     'seen' => '',
#     'parms' => [
#       {
#         'named' => '',
#         'reqd' => 1,
#         'name' => '$n'
#       },
#       {
#         'named' => '',
#         'reqd' => 1,
#         'name' => '$k'
#       }
#     ]
#   },
#   'filename' => 't/33_recursion.t',
#   'candidate_name' => 'main::pascal::main',
#   'linenum' => 14,
#   'args' => $mpc_impl->{'sig'}{'parms'},
#   'code' => sub { "DUMMY" }
# }; (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm:273)
# Copier for main::pascal::main():
#  #line 276 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
# use strict;
# use warnings;
# sub {
# 
# #line 283 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#     if( $] lt '5.018' || $VERBOSE > 1) {
#         require Data::Dumper;
#         require Test::More;
#         Test::More::diag(sprintf("Positional copier invocation %d:\n%s",
#             ++$Sub::Multi::Tiny::Util::_positional_copier_invocation_number,
#             Data::Dumper->Dump([\@_],['copier_args'])));
#     }
# 
# #line 293 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#     (
# 
# #line 303 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#         $main::pascal::n
# ,
# #line 303 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#         $main::pascal::k
# #line 306 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#     ) = @_;
# 
#     if( $] lt '5.018' || $VERBOSE > 1) {
#         Test::More::diag(sprintf("After positional copier invocation %d:",
#             $Sub::Multi::Tiny::Util::_positional_copier_invocation_number));
#         Test::More::diag(join "\n", map {
#             sprintf("%s = %s", $_, eval($_))
#         } @vars);
#     }
# 
# } #copier
 (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm:319)
# $mpc_defined_in = 'main::pascal';
#  $mpc_impl = {
#   'sig' => {
#     'seen' => '',
#     'parms' => [
#       {
#         'named' => '',
#         'reqd' => 1,
#         'name' => '$n'
#       }
#     ]
#   },
#   'filename' => 't/33_recursion.t',
#   'candidate_name' => 'main::pascal::base',
#   'linenum' => 18,
#   'args' => $mpc_impl->{'sig'}{'parms'},
#   'code' => sub { "DUMMY" }
# }; (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm:273)
# Copier for main::pascal::base():
#  #line 276 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
# use strict;
# use warnings;
# sub {
# 
# #line 283 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#     if( $] lt '5.018' || $VERBOSE > 1) {
#         require Data::Dumper;
#         require Test::More;
#         Test::More::diag(sprintf("Positional copier invocation %d:\n%s",
#             ++$Sub::Multi::Tiny::Util::_positional_copier_invocation_number,
#             Data::Dumper->Dump([\@_],['copier_args'])));
#     }
# 
# #line 293 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#     (
# 
# #line 303 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#         $main::pascal::n
# #line 306 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#     ) = @_;
# 
#     if( $] lt '5.018' || $VERBOSE > 1) {
#         Test::More::diag(sprintf("After positional copier invocation %d:",
#             $Sub::Multi::Tiny::Util::_positional_copier_invocation_number));
#         Test::More::diag(join "\n", map {
#             sprintf("%s = %s", $_, eval($_))
#         } @vars);
#     }
# 
# } #copier
 (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm:319)
# _complete_dispatcher making Sub::Multi::Tiny::Dispatcher::Default dispatcher with args: $multisub = {
#   'impls' => [
#     {
#       'sig' => {
#         'seen' => '',
#         'parms' => [
#           {
#             'named' => '',
#             'reqd' => 1,
#             'name' => '$n'
#           },
#           {
#             'named' => '',
#             'reqd' => 1,
#             'name' => '$k'
#           }
#         ]
#       },
#       'filename' => 't/33_recursion.t',
#       'candidate_name' => 'main::pascal::main',
#       'linenum' => 14,
#       'args' => $multisub->{'impls'}[0]{'sig'}{'parms'},
#       'code' => sub { "DUMMY" }
#     },
#     {
#       'sig' => {
#         'seen' => '',
#         'parms' => [
#           {
#             'named' => '',
#             'reqd' => 1,
#             'name' => '$n'
#           }
#         ]
#       },
#       'filename' => 't/33_recursion.t',
#       'candidate_name' => 'main::pascal::base',
#       'linenum' => 18,
#       'args' => $multisub->{'impls'}[1]{'sig'}{'parms'},
#       'code' => sub { "DUMMY" }
#     }
#   ],
#   'used_by' => 'main',
#   'subname' => 'pascal',
#   'possible_params' => {
#     '$k' => 1,
#     '$n' => 1
#   },
#   'defined_in' => 'main::pascal'
# };
#  $inner_code = '#line 74 "C:\\strawberry\\cpan\\build\\Sub-Multi-Tiny-0.000013-0\\blib\\lib/Sub/Multi/Tiny/Dispatcher/Default.pm"
#             # Find the candidate
#             my $arity = scalar @_;
#             $candidate = $data[0]->{$arity};
#             die "No candidate found for main::pascal() with arity " .
#                 (scalar @_) unless $candidate;
#             $copier = $data[1]->{$arity};
# 
# ';
#  $data = {
#   '1' => $multisub->{'impls'}[1]{'code'},
#   '2' => $multisub->{'impls'}[0]{'code'}
# };
#  $VAR4 = {
#   '1' => sub { "DUMMY" },
#   '2' => sub { "DUMMY" }
# }; (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm:200)
# Sub::Multi::Tiny::Dispatcher::Default dispatcher for main::pascal():
# #line 204 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#         use strict;
#         use warnings;
#         sub {
#             # Find the candidate
#             my ($candidate, $copier);
# 
# #line 74 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Dispatcher/Default.pm"
#             # Find the candidate
#             my $arity = scalar @_;
#             $candidate = $data[0]->{$arity};
#             die "No candidate found for main::pascal() with arity " .
#                 (scalar @_) unless $candidate;
#             $copier = $data[1]->{$arity};
# 
# 
# 
#             # Save the present values of the parameters
# 
# #line 219 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
# my $saved_k = $main::pascal::k;
# 
# #line 219 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
# my $saved_n = $main::pascal::n;
# 
# #line 225 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#             # Create the guard
#             my $guard = Guard::guard {
# 
# #line 221 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
# $main::pascal::k = $saved_k;
# 
# #line 221 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
# $main::pascal::n = $saved_n;
# 
# 
# 
#             }; #End of guard
# 
# #line 234 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
# 
#             # Copy the parameters into the variables the candidate
#             # will access them from
#             &$copier;   # $copier gets @_ automatically
# 
#             # Pass the guard so the parameters will be reset once \$candidate
#             # finishes running.
#             @_ = ($guard);
# 
#             # Invoke the selected candidate
#             goto &$candidate;
#         } #dispatcher
# 
 (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm:248)
# Positional copier invocation 1:
# $copier_args = [
#   1
# ];
# After positional copier invocation 1:
# $main::pascal::n = 1
# Positional copier invocation 2:
# $copier_args = [
#   1,
#   ${\$copier_args->[0]}
# ];
# After positional copier invocation 2:
# $main::pascal::n = 1
# $main::pascal::k = 1
# Positional copier invocation 3:
# $copier_args = [
#   2
# ];
# After positional copier invocation 3:
# $main::pascal::n = 2
# Positional copier invocation 4:
# $copier_args = [
#   2,
#   ${\$copier_args->[0]}
# ];
# After positional copier invocation 4:
# $main::pascal::n = 2
# $main::pascal::k = 2
# Positional copier invocation 5:
# $copier_args = [
#   3,
#   1
# ];
# After positional copier invocation 5:
# $main::pascal::n = 3
# $main::pascal::k = 1
# Positional copier invocation 6:
# $copier_args = [
#   2,
#   0
# ];
# After positional copier invocation 6:
# $main::pascal::n = 2
# $main::pascal::k = 0
# Positional copier invocation 7:
# $copier_args = [
#   2,
#   1
# ];
# After positional copier invocation 7:
# $main::pascal::n = 2
# $main::pascal::k = 1
# Positional copier invocation 8:
# $copier_args = [
#   1,
#   0
# ];
# After positional copier invocation 8:
# $main::pascal::n = 1
# $main::pascal::k = 0
# Positional copier invocation 9:
# $copier_args = [
#   1,
#   1
# ];
# After positional copier invocation 9:
# $main::pascal::n = 1
# $main::pascal::k = 1
# Positional copier invocation 10:
# $copier_args = [
#   4,
#   4
# ];
# After positional copier invocation 10:
# $main::pascal::n = 4
# $main::pascal::k = 4
t/33_recursion.t ........... ok
# ########################################
# t/34_invalid_param.t
t/34_invalid_param.t ....... ok
# ########################################
# t/35_invalid_type.t
t/35_invalid_type.t ........ ok
# ########################################
# t/36_invalid_where.t
t/36_invalid_where.t ....... ok
# ########################################
# t/40_type_tiny.t
# Target main::my_multi package Sub::Multi::Tiny (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:144)
# main::my_multi using dispatcher Sub::Multi::Tiny::Dispatcher::TypeParams (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:180)
# Making main::my_multi() (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:184)
# Making main::my_multi attr M (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:202)
# M code:
# #line 231 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm"
# package main::my_multi;
# 
# #line 237 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm"
# use Attribute::Handlers;
# use Sub::Multi::Tiny::Util qw(_hlog);
# ##use Data::Dumper;
# 
# sub M :ATTR(CODE,RAWDATA) {
#     _hlog { require Data::Dumper;
#             'In ', __PACKAGE__, "::M: \n",
#             Data::Dumper->Dump([\@_], ['attr_args']) } 2;
# 
#     my ($package, $symbol, $referent, $attr, $data, $phase,
#         $filename, $linenum) = @_;
#     my $funcname = "$package\::" . *{$symbol}{NAME};
# 
#     _hlog {     # Code from Attribute::Handlers, license perl_5
#         ref($referent),
#         $funcname,
#         "($referent)", "was just declared",
#         "and ascribed the ${attr} attribute",
#         "with data ($data)",
#         "in phase $phase",
#         "in file $filename at line $linenum"
#     } 2;
# 
# #line 264 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm"
#     die 'Dispatchers already created - please file a bug report'
#         if Sub::Multi::Tiny::_dispatchers_created();
# 
#     my $multi_def = $_multisubs{'main::my_multi'};
# 
# #line 272 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm"
#     my $hrSig = Sub::Multi::Tiny::_parse_arglist($data, $funcname);
#     Sub::Multi::Tiny::_check_and_inflate_sig($hrSig, $multi_def,
#         $funcname, $package, $filename, $linenum);
# 
# #line 278 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm"
# 
# #line 282 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm"
#     my $info = {
#         code => $referent,
#         args => $hrSig->{parms},    # TODO remove eventually
#         sig => $hrSig,
# 
#         # For error messages
#         filename => $filename,
#         linenum => $linenum,
#         candidate_name => $funcname
#     };
#     push @{$multi_def->{impls}}, $info;
# 
# } #M
# 
 (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:297)
# Making main::my_multi::my_multi stub (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:212)
# Target main::check_int package Sub::Multi::Tiny (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:144)
# main::check_int using dispatcher Sub::Multi::Tiny::Dispatcher::TypeParams (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:180)
# Making main::check_int() (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:184)
# Making main::check_int attr M (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:202)
# M code:
# #line 231 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm"
# package main::check_int;
# 
# #line 237 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm"
# use Attribute::Handlers;
# use Sub::Multi::Tiny::Util qw(_hlog);
# ##use Data::Dumper;
# 
# sub M :ATTR(CODE,RAWDATA) {
#     _hlog { require Data::Dumper;
#             'In ', __PACKAGE__, "::M: \n",
#             Data::Dumper->Dump([\@_], ['attr_args']) } 2;
# 
#     my ($package, $symbol, $referent, $attr, $data, $phase,
#         $filename, $linenum) = @_;
#     my $funcname = "$package\::" . *{$symbol}{NAME};
# 
#     _hlog {     # Code from Attribute::Handlers, license perl_5
#         ref($referent),
#         $funcname,
#         "($referent)", "was just declared",
#         "and ascribed the ${attr} attribute",
#         "with data ($data)",
#         "in phase $phase",
#         "in file $filename at line $linenum"
#     } 2;
# 
# #line 264 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm"
#     die 'Dispatchers already created - please file a bug report'
#         if Sub::Multi::Tiny::_dispatchers_created();
# 
#     my $multi_def = $_multisubs{'main::check_int'};
# 
# #line 272 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm"
#     my $hrSig = Sub::Multi::Tiny::_parse_arglist($data, $funcname);
#     Sub::Multi::Tiny::_check_and_inflate_sig($hrSig, $multi_def,
#         $funcname, $package, $filename, $linenum);
# 
# #line 278 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm"
# 
# #line 282 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm"
#     my $info = {
#         code => $referent,
#         args => $hrSig->{parms},    # TODO remove eventually
#         sig => $hrSig,
# 
#         # For error messages
#         filename => $filename,
#         linenum => $linenum,
#         candidate_name => $funcname
#     };
#     push @{$multi_def->{impls}}, $info;
# 
# } #M
# 
 (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:297)
# Making main::check_int::check_int stub (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:212)
# Target main::check_2x2 package Sub::Multi::Tiny (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:144)
# main::check_2x2 using dispatcher Sub::Multi::Tiny::Dispatcher::TypeParams (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:180)
# Making main::check_2x2() (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:184)
# Making main::check_2x2 attr M (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:202)
# M code:
# #line 231 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm"
# package main::check_2x2;
# 
# #line 237 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm"
# use Attribute::Handlers;
# use Sub::Multi::Tiny::Util qw(_hlog);
# ##use Data::Dumper;
# 
# sub M :ATTR(CODE,RAWDATA) {
#     _hlog { require Data::Dumper;
#             'In ', __PACKAGE__, "::M: \n",
#             Data::Dumper->Dump([\@_], ['attr_args']) } 2;
# 
#     my ($package, $symbol, $referent, $attr, $data, $phase,
#         $filename, $linenum) = @_;
#     my $funcname = "$package\::" . *{$symbol}{NAME};
# 
#     _hlog {     # Code from Attribute::Handlers, license perl_5
#         ref($referent),
#         $funcname,
#         "($referent)", "was just declared",
#         "and ascribed the ${attr} attribute",
#         "with data ($data)",
#         "in phase $phase",
#         "in file $filename at line $linenum"
#     } 2;
# 
# #line 264 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm"
#     die 'Dispatchers already created - please file a bug report'
#         if Sub::Multi::Tiny::_dispatchers_created();
# 
#     my $multi_def = $_multisubs{'main::check_2x2'};
# 
# #line 272 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm"
#     my $hrSig = Sub::Multi::Tiny::_parse_arglist($data, $funcname);
#     Sub::Multi::Tiny::_check_and_inflate_sig($hrSig, $multi_def,
#         $funcname, $package, $filename, $linenum);
# 
# #line 278 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm"
# 
# #line 282 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm"
#     my $info = {
#         code => $referent,
#         args => $hrSig->{parms},    # TODO remove eventually
#         sig => $hrSig,
# 
#         # For error messages
#         filename => $filename,
#         linenum => $linenum,
#         candidate_name => $funcname
#     };
#     push @{$multi_def->{impls}}, $info;
# 
# } #M
# 
 (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:297)
# Making main::check_2x2::check_2x2 stub (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:212)
# Target main::check_arity package Sub::Multi::Tiny (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:144)
# main::check_arity using dispatcher Sub::Multi::Tiny::Dispatcher::TypeParams (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:180)
# Making main::check_arity() (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:184)
# Making main::check_arity attr M (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:202)
# M code:
# #line 231 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm"
# package main::check_arity;
# 
# #line 237 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm"
# use Attribute::Handlers;
# use Sub::Multi::Tiny::Util qw(_hlog);
# ##use Data::Dumper;
# 
# sub M :ATTR(CODE,RAWDATA) {
#     _hlog { require Data::Dumper;
#             'In ', __PACKAGE__, "::M: \n",
#             Data::Dumper->Dump([\@_], ['attr_args']) } 2;
# 
#     my ($package, $symbol, $referent, $attr, $data, $phase,
#         $filename, $linenum) = @_;
#     my $funcname = "$package\::" . *{$symbol}{NAME};
# 
#     _hlog {     # Code from Attribute::Handlers, license perl_5
#         ref($referent),
#         $funcname,
#         "($referent)", "was just declared",
#         "and ascribed the ${attr} attribute",
#         "with data ($data)",
#         "in phase $phase",
#         "in file $filename at line $linenum"
#     } 2;
# 
# #line 264 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm"
#     die 'Dispatchers already created - please file a bug report'
#         if Sub::Multi::Tiny::_dispatchers_created();
# 
#     my $multi_def = $_multisubs{'main::check_arity'};
# 
# #line 272 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm"
#     my $hrSig = Sub::Multi::Tiny::_parse_arglist($data, $funcname);
#     Sub::Multi::Tiny::_check_and_inflate_sig($hrSig, $multi_def,
#         $funcname, $package, $filename, $linenum);
# 
# #line 278 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm"
# 
# #line 282 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm"
#     my $info = {
#         code => $referent,
#         args => $hrSig->{parms},    # TODO remove eventually
#         sig => $hrSig,
# 
#         # For error messages
#         filename => $filename,
#         linenum => $linenum,
#         candidate_name => $funcname
#     };
#     push @{$multi_def->{impls}}, $info;
# 
# } #M
# 
 (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:297)
# Making main::check_arity::check_arity stub (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:212)
# In  main::my_multi ::M: 
#  $attr_args = []; (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:244)
# CODE main::my_multi::second (CODE(0x283d008)) was just declared and ascribed the M attribute with data (Int $foo) in phase CHECK in file t/40_type_tiny.t at line 18 (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:258)
# Parsing args for main::my_multi::second: Int $foo (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:221)
# In main::my_multi evaluating type 'Int' (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:322)
# In  main::my_multi ::M: 
#  $attr_args = []; (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:244)
# CODE main::my_multi::first (CODE(0x2938150)) was just declared and ascribed the M attribute with data (Str $foo) in phase CHECK in file t/40_type_tiny.t at line 22 (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:258)
# Parsing args for main::my_multi::first: Str $foo (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:221)
# In main::my_multi evaluating type 'Str' (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:322)
# In  main::check_int ::M: 
#  $attr_args = []; (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:244)
# CODE main::check_int::small (CODE(0x29388ac)) was just declared and ascribed the M attribute with data ($num where { $_ < 10}) in phase CHECK in file t/40_type_tiny.t at line 42 (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:258)
# Parsing args for main::check_int::small: $num where { $_ < 10} (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:221)
# In main::check_int evaluating 'where' clause '{ $_ < 10}' (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:335)
# In  main::check_int ::M: 
#  $attr_args = []; (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:244)
# CODE main::check_int::large (CODE(0x2938e28)) was just declared and ascribed the M attribute with data ($num where { $_ >= 10}) in phase CHECK in file t/40_type_tiny.t at line 46 (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:258)
# Parsing args for main::check_int::large: $num where { $_ >= 10} (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:221)
# In main::check_int evaluating 'where' clause '{ $_ >= 10}' (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:335)
# In  main::check_2x2 ::M: 
#  $attr_args = []; (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:244)
# CODE main::check_2x2::tt (CODE(0x29393f8)) was just declared and ascribed the M attribute with data (Int $num where { length() >= 2 }) in phase CHECK in file t/40_type_tiny.t at line 63 (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:258)
# Parsing args for main::check_2x2::tt: Int $num where { length() >= 2 } (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:221)
# In main::check_2x2 evaluating type 'Int' (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:322)
# In main::check_2x2 evaluating 'where' clause '{ length() >= 2 }' (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:335)
# In  main::check_2x2 ::M: 
#  $attr_args = []; (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:244)
# CODE main::check_2x2::tf (CODE(0x2939974)) was just declared and ascribed the M attribute with data (Int $num where { length() <  2 }) in phase CHECK in file t/40_type_tiny.t at line 64 (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:258)
# Parsing args for main::check_2x2::tf: Int $num where { length() <  2 } (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:221)
# In main::check_2x2 evaluating type 'Int' (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:322)
# In main::check_2x2 evaluating 'where' clause '{ length() <  2 }' (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:335)
# In  main::check_2x2 ::M: 
#  $attr_args = []; (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:244)
# CODE main::check_2x2::ft (CODE(0x2939a64)) was just declared and ascribed the M attribute with data (Str $num where { length() >= 2 }) in phase CHECK in file t/40_type_tiny.t at line 65 (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:258)
# Parsing args for main::check_2x2::ft: Str $num where { length() >= 2 } (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:221)
# In main::check_2x2 evaluating type 'Str' (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:322)
# In main::check_2x2 evaluating 'where' clause '{ length() >= 2 }' (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:335)
# In  main::check_2x2 ::M: 
#  $attr_args = []; (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:244)
# CODE main::check_2x2::ff (CODE(0x2939ac4)) was just declared and ascribed the M attribute with data (Str $num where { length() <  2 }) in phase CHECK in file t/40_type_tiny.t at line 66 (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:258)
# Parsing args for main::check_2x2::ff: Str $num where { length() <  2 } (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:221)
# In main::check_2x2 evaluating type 'Str' (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:322)
# In main::check_2x2 evaluating 'where' clause '{ length() <  2 }' (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:335)
# In  main::check_arity ::M: 
#  $attr_args = []; (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:244)
# CODE main::check_arity::second (CODE(0x293a0d0)) was just declared and ascribed the M attribute with data (Int $foo) in phase CHECK in file t/40_type_tiny.t at line 94 (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:258)
# Parsing args for main::check_arity::second: Int $foo (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:221)
# In main::check_arity evaluating type 'Int' (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:322)
# In  main::check_arity ::M: 
#  $attr_args = []; (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:244)
# CODE main::check_arity::first (CODE(0x293b684)) was just declared and ascribed the M attribute with data (Str $foo) in phase CHECK in file t/40_type_tiny.t at line 98 (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:258)
# Parsing args for main::check_arity::first: Str $foo (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:221)
# In main::check_arity evaluating type 'Str' (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:322)
# Sub::Multi::Tiny in INIT block (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:96)
# Making Type::Params dispatcher for:  $multisub = {
#   'impls' => [
#     {
#       'sig' => {
#         'seen' => '',
#         'parms' => [
#           {
#             'named' => '',
#             'name' => '$num',
#             'reqd' => 1,
#             'type' => bless( {
#               'compiled_type_constraint' => sub { "DUMMY" },
#               'type_default' => sub { "DUMMY" },
#               'parent' => bless( {
#                 'compiled_type_constraint' => sub { "DUMMY" },
#                 'parent' => bless( {
#                   'compiled_type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'compiled_type_constraint'},
#                   'type_default' => sub { "DUMMY" },
#                   'parent' => bless( {
#                     'sorter' => sub { "DUMMY" },
#                     'coercion' => bless( {
#                       'frozen' => 1,
#                       'name' => '__ANON__',
#                       'type_coercion_map' => [],
#                       'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'},
#                       'display_name' => 'to_Str',
#                       '_compiled_type_constraint_check' => sub { "DUMMY" }
#                     }, 'Type::Coercion' ),
#                     'library' => 'Types::Standard',
#                     'inlined' => sub { "DUMMY" },
#                     'constraint' => sub { "DUMMY" },
#                     'type_default' => sub { "DUMMY" },
#                     'compiled_type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'coercion'}{'_compiled_type_constraint_check'},
#                     'parent' => bless( {
#                       'compiled_type_constraint' => sub { "DUMMY" },
#                       'parent' => bless( {
#                         'compiled_type_constraint' => sub { "DUMMY" },
#                         'parent' => bless( {
#                           'compiled_type_constraint' => sub { "DUMMY" },
#                           'parent' => bless( {
#                             'compiled_type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'},
#                             'type_default' => sub { "DUMMY" },
#                             'coercion' => bless( {
#                               'frozen' => 1,
#                               'name' => '__ANON__',
#                               'type_coercion_map' => [],
#                               'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                               'display_name' => 'to_Any',
#                               '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                             }, 'Type::Coercion' ),
#                             'name' => 'Any',
#                             'library' => 'Types::Standard',
#                             'display_name' => 'Any',
#                             '_is_core' => 1,
#                             'complement_name' => 'None',
#                             '_overload_coderef' => sub { "DUMMY" },
#                             'deprecated' => '',
#                             '_overrides_assert_return' => '',
#                             'constraint' => sub { "DUMMY" },
#                             'inlined' => sub { "DUMMY" },
#                             'definition_context' => {
#                               'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                               'line' => 211,
#                               'package' => 'Types::Standard'
#                             },
#                             'uniq' => 1
#                           }, 'Type::Tiny' ),
#                           'coercion' => bless( {
#                             'frozen' => 1,
#                             'name' => '__ANON__',
#                             'type_coercion_map' => [],
#                             'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                             'display_name' => 'to_Item',
#                             '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                           }, 'Type::Coercion' ),
#                           'name' => 'Item',
#                           'library' => 'Types::Standard',
#                           'display_name' => 'Item',
#                           '_is_core' => 1,
#                           '_overload_coderef' => sub { "DUMMY" },
#                           'deprecated' => '',
#                           '_overrides_assert_return' => '',
#                           'constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'constraint'},
#                           'inlined' => sub { "DUMMY" },
#                           'definition_context' => {
#                             'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                             'line' => 217,
#                             'package' => 'Types::Standard'
#                           },
#                           'uniq' => 2
#                         }, 'Type::Tiny' ),
#                         'coercion' => bless( {
#                           'frozen' => 1,
#                           'name' => '__ANON__',
#                           'type_coercion_map' => [],
#                           'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                           'display_name' => 'to_Defined',
#                           '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                         }, 'Type::Coercion' ),
#                         'name' => 'Defined',
#                         'library' => 'Types::Standard',
#                         'display_name' => 'Defined',
#                         '_is_core' => 1,
#                         '_overload_coderef' => sub { "DUMMY" },
#                         'deprecated' => '',
#                         '_overrides_assert_return' => '',
#                         'complementary_type' => bless( {
#                           'coercion' => bless( {
#                             'frozen' => 1,
#                             'name' => '__ANON__',
#                             'type_coercion_map' => [],
#                             'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'complementary_type'},
#                             'display_name' => 'to_Undef',
#                             '_compiled_type_constraint_check' => sub { "DUMMY" }
#                           }, 'Type::Coercion' ),
#                           'library' => 'Types::Standard',
#                           'complementary_type' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                           'inlined' => sub { "DUMMY" },
#                           'constraint' => sub { "DUMMY" },
#                           'type_default' => sub { "DUMMY" },
#                           'compiled_type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'complementary_type'}{'coercion'}{'_compiled_type_constraint_check'},
#                           'parent' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                           'name' => 'Undef',
#                           '_is_core' => 1,
#                           'display_name' => 'Undef',
#                           '_overload_coderef' => sub { "DUMMY" },
#                           'deprecated' => '',
#                           '_overrides_assert_return' => '',
#                           'definition_context' => {
#                             'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                             'line' => 245,
#                             'package' => 'Types::Standard'
#                           },
#                           'uniq' => 6
#                         }, 'Type::Tiny' ),
#                         'inlined' => sub { "DUMMY" },
#                         'constraint' => sub { "DUMMY" },
#                         'definition_context' => {
#                           'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                           'line' => 253,
#                           'package' => 'Types::Standard'
#                         },
#                         'uniq' => 7
#                       }, 'Type::Tiny' ),
#                       'coercion' => bless( {
#                         'frozen' => 1,
#                         'name' => '__ANON__',
#                         'type_coercion_map' => [],
#                         'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'},
#                         'display_name' => 'to_Value',
#                         '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                       }, 'Type::Coercion' ),
#                       'name' => 'Value',
#                       'library' => 'Types::Standard',
#                       'display_name' => 'Value',
#                       '_is_core' => 1,
#                       '_overload_coderef' => sub { "DUMMY" },
#                       'deprecated' => '',
#                       '_overrides_assert_return' => '',
#                       'inlined' => sub { "DUMMY" },
#                       'constraint' => sub { "DUMMY" },
#                       'definition_context' => {
#                         'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                         'line' => 267,
#                         'package' => 'Types::Standard'
#                       },
#                       'uniq' => 8
#                     }, 'Type::Tiny' ),
#                     'name' => 'Str',
#                     '_is_core' => 1,
#                     'display_name' => 'Str',
#                     '_overload_coderef' => sub { "DUMMY" },
#                     'deprecated' => '',
#                     '_overrides_assert_return' => '',
#                     'definition_context' => {
#                       'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                       'line' => 282,
#                       'package' => 'Types::Standard'
#                     },
#                     'uniq' => 9
#                   }, 'Type::Tiny' ),
#                   'sorter' => sub { "DUMMY" },
#                   'coercion' => bless( {
#                     'frozen' => 1,
#                     'name' => '__ANON__',
#                     'type_coercion_map' => [],
#                     'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'},
#                     'display_name' => 'to_LaxNum',
#                     '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'compiled_type_constraint'}
#                   }, 'Type::Coercion' ),
#                   'name' => 'LaxNum',
#                   'library' => 'Types::Standard',
#                   'display_name' => 'LaxNum',
#                   '_overload_coderef' => sub { "DUMMY" },
#                   'deprecated' => '',
#                   '_overrides_assert_return' => '',
#                   'inlined' => sub { "DUMMY" },
#                   'constraint' => sub { "DUMMY" },
#                   'definition_context' => {
#                     'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                     'line' => 300,
#                     'package' => 'Types::Standard'
#                   },
#                   'uniq' => 10
#                 }, 'Type::Tiny' ),
#                 'coercion' => bless( {
#                   'frozen' => 1,
#                   'name' => '__ANON__',
#                   'type_coercion_map' => [],
#                   'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'},
#                   'display_name' => 'to_Num',
#                   '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'compiled_type_constraint'}
#                 }, 'Type::Coercion' ),
#                 'name' => 'Num',
#                 'library' => 'Types::Standard',
#                 'display_name' => 'Num',
#                 '_overload_coderef' => sub { "DUMMY" },
#                 'deprecated' => '',
#                 '_overrides_assert_return' => '',
#                 'definition_context' => {
#                   'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                   'line' => 335,
#                   'package' => 'Types::Standard'
#                 },
#                 'constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'constraint'},
#                 'uniq' => 12
#               }, 'Type::Tiny' ),
#               'coercion' => bless( {
#                 'frozen' => 1,
#                 'name' => '__ANON__',
#                 'type_coercion_map' => [],
#                 'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'},
#                 'display_name' => 'to_Int',
#                 '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'compiled_type_constraint'}
#               }, 'Type::Coercion' ),
#               'name' => 'Int',
#               'library' => 'Types::Standard',
#               'display_name' => 'Int',
#               '_is_core' => 1,
#               '_overload_coderef' => sub { "DUMMY" },
#               'deprecated' => '',
#               '_overrides_assert_return' => '',
#               'inlined' => sub { "DUMMY" },
#               'constraint' => sub { "DUMMY" },
#               'definition_context' => {
#                 'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                 'line' => 352,
#                 'package' => 'Types::Standard'
#               },
#               'uniq' => 13
#             }, 'Type::Tiny' ),
#             'where' => sub { "DUMMY" }
#           }
#         ]
#       },
#       'filename' => 't/40_type_tiny.t',
#       'candidate_name' => 'main::check_2x2::tt',
#       'linenum' => 63,
#       'args' => $multisub->{'impls'}[0]{'sig'}{'parms'},
#       'code' => sub { "DUMMY" }
#     },
#     {
#       'sig' => {
#         'seen' => '',
#         'parms' => [
#           {
#             'named' => '',
#             'name' => '$num',
#             'reqd' => 1,
#             'type' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'},
#             'where' => sub { "DUMMY" }
#           }
#         ]
#       },
#       'filename' => 't/40_type_tiny.t',
#       'candidate_name' => 'main::check_2x2::tf',
#       'linenum' => 64,
#       'args' => $multisub->{'impls'}[1]{'sig'}{'parms'},
#       'code' => sub { "DUMMY" }
#     },
#     {
#       'sig' => {
#         'seen' => '',
#         'parms' => [
#           {
#             'named' => '',
#             'name' => '$num',
#             'reqd' => 1,
#             'type' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'},
#             'where' => sub { "DUMMY" }
#           }
#         ]
#       },
#       'filename' => 't/40_type_tiny.t',
#       'candidate_name' => 'main::check_2x2::ft',
#       'linenum' => 65,
#       'args' => $multisub->{'impls'}[2]{'sig'}{'parms'},
#       'code' => sub { "DUMMY" }
#     },
#     {
#       'sig' => {
#         'seen' => '',
#         'parms' => [
#           {
#             'named' => '',
#             'name' => '$num',
#             'reqd' => 1,
#             'type' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'},
#             'where' => sub { "DUMMY" }
#           }
#         ]
#       },
#       'filename' => 't/40_type_tiny.t',
#       'candidate_name' => 'main::check_2x2::ff',
#       'linenum' => 66,
#       'args' => $multisub->{'impls'}[3]{'sig'}{'parms'},
#       'code' => sub { "DUMMY" }
#     }
#   ],
#   'used_by' => 'main',
#   'subname' => 'check_2x2',
#   'possible_params' => {
#     '$num' => 1
#   },
#   'defined_in' => 'main::check_2x2'
# }; (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Dispatcher/TypeParams.pm:82)
# $mpc_defined_in = 'main::check_2x2';
#  $mpc_impl = {
#   'sig' => {
#     'seen' => '',
#     'parms' => [
#       {
#         'named' => '',
#         'name' => '$num',
#         'reqd' => 1,
#         'type' => bless( {
#           'compiled_type_constraint' => sub { "DUMMY" },
#           'type_default' => sub { "DUMMY" },
#           'parent' => bless( {
#             'compiled_type_constraint' => sub { "DUMMY" },
#             'parent' => bless( {
#               'compiled_type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'compiled_type_constraint'},
#               'type_default' => sub { "DUMMY" },
#               'parent' => bless( {
#                 'sorter' => sub { "DUMMY" },
#                 'coercion' => bless( {
#                   'frozen' => 1,
#                   'name' => '__ANON__',
#                   'type_coercion_map' => [],
#                   'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'},
#                   'display_name' => 'to_Str',
#                   '_compiled_type_constraint_check' => sub { "DUMMY" }
#                 }, 'Type::Coercion' ),
#                 'library' => 'Types::Standard',
#                 'inlined' => sub { "DUMMY" },
#                 'constraint' => sub { "DUMMY" },
#                 'type_default' => sub { "DUMMY" },
#                 'compiled_type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'coercion'}{'_compiled_type_constraint_check'},
#                 'parent' => bless( {
#                   'compiled_type_constraint' => sub { "DUMMY" },
#                   'parent' => bless( {
#                     'compiled_type_constraint' => sub { "DUMMY" },
#                     'parent' => bless( {
#                       'compiled_type_constraint' => sub { "DUMMY" },
#                       'parent' => bless( {
#                         'compiled_type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'},
#                         'type_default' => sub { "DUMMY" },
#                         'coercion' => bless( {
#                           'frozen' => 1,
#                           'name' => '__ANON__',
#                           'type_coercion_map' => [],
#                           'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                           'display_name' => 'to_Any',
#                           '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                         }, 'Type::Coercion' ),
#                         'name' => 'Any',
#                         'library' => 'Types::Standard',
#                         'display_name' => 'Any',
#                         '_is_core' => 1,
#                         'complement_name' => 'None',
#                         '_overload_coderef' => sub { "DUMMY" },
#                         'deprecated' => '',
#                         '_overrides_assert_return' => '',
#                         'constraint' => sub { "DUMMY" },
#                         'inlined' => sub { "DUMMY" },
#                         'definition_context' => {
#                           'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                           'line' => 211,
#                           'package' => 'Types::Standard'
#                         },
#                         'uniq' => 1
#                       }, 'Type::Tiny' ),
#                       'coercion' => bless( {
#                         'frozen' => 1,
#                         'name' => '__ANON__',
#                         'type_coercion_map' => [],
#                         'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                         'display_name' => 'to_Item',
#                         '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                       }, 'Type::Coercion' ),
#                       'name' => 'Item',
#                       'library' => 'Types::Standard',
#                       'display_name' => 'Item',
#                       '_is_core' => 1,
#                       '_overload_coderef' => sub { "DUMMY" },
#                       'deprecated' => '',
#                       '_overrides_assert_return' => '',
#                       'constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'constraint'},
#                       'inlined' => sub { "DUMMY" },
#                       'definition_context' => {
#                         'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                         'line' => 217,
#                         'package' => 'Types::Standard'
#                       },
#                       'uniq' => 2
#                     }, 'Type::Tiny' ),
#                     'coercion' => bless( {
#                       'frozen' => 1,
#                       'name' => '__ANON__',
#                       'type_coercion_map' => [],
#                       'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                       'display_name' => 'to_Defined',
#                       '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                     }, 'Type::Coercion' ),
#                     'name' => 'Defined',
#                     'library' => 'Types::Standard',
#                     'display_name' => 'Defined',
#                     '_is_core' => 1,
#                     '_overload_coderef' => sub { "DUMMY" },
#                     'deprecated' => '',
#                     '_overrides_assert_return' => '',
#                     'complementary_type' => bless( {
#                       'coercion' => bless( {
#                         'frozen' => 1,
#                         'name' => '__ANON__',
#                         'type_coercion_map' => [],
#                         'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'complementary_type'},
#                         'display_name' => 'to_Undef',
#                         '_compiled_type_constraint_check' => sub { "DUMMY" }
#                       }, 'Type::Coercion' ),
#                       'library' => 'Types::Standard',
#                       'complementary_type' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                       'inlined' => sub { "DUMMY" },
#                       'constraint' => sub { "DUMMY" },
#                       'type_default' => sub { "DUMMY" },
#                       'compiled_type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'complementary_type'}{'coercion'}{'_compiled_type_constraint_check'},
#                       'parent' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                       'name' => 'Undef',
#                       '_is_core' => 1,
#                       'display_name' => 'Undef',
#                       '_overload_coderef' => sub { "DUMMY" },
#                       'deprecated' => '',
#                       '_overrides_assert_return' => '',
#                       'definition_context' => {
#                         'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                         'line' => 245,
#                         'package' => 'Types::Standard'
#                       },
#                       'uniq' => 6
#                     }, 'Type::Tiny' ),
#                     'inlined' => sub { "DUMMY" },
#                     'constraint' => sub { "DUMMY" },
#                     'definition_context' => {
#                       'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                       'line' => 253,
#                       'package' => 'Types::Standard'
#                     },
#                     'uniq' => 7
#                   }, 'Type::Tiny' ),
#                   'coercion' => bless( {
#                     'frozen' => 1,
#                     'name' => '__ANON__',
#                     'type_coercion_map' => [],
#                     'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'},
#                     'display_name' => 'to_Value',
#                     '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                   }, 'Type::Coercion' ),
#                   'name' => 'Value',
#                   'library' => 'Types::Standard',
#                   'display_name' => 'Value',
#                   '_is_core' => 1,
#                   '_overload_coderef' => sub { "DUMMY" },
#                   'deprecated' => '',
#                   '_overrides_assert_return' => '',
#                   'inlined' => sub { "DUMMY" },
#                   'constraint' => sub { "DUMMY" },
#                   'definition_context' => {
#                     'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                     'line' => 267,
#                     'package' => 'Types::Standard'
#                   },
#                   'uniq' => 8
#                 }, 'Type::Tiny' ),
#                 'name' => 'Str',
#                 '_is_core' => 1,
#                 'display_name' => 'Str',
#                 '_overload_coderef' => sub { "DUMMY" },
#                 'deprecated' => '',
#                 '_overrides_assert_return' => '',
#                 'definition_context' => {
#                   'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                   'line' => 282,
#                   'package' => 'Types::Standard'
#                 },
#                 'uniq' => 9
#               }, 'Type::Tiny' ),
#               'sorter' => sub { "DUMMY" },
#               'coercion' => bless( {
#                 'frozen' => 1,
#                 'name' => '__ANON__',
#                 'type_coercion_map' => [],
#                 'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'},
#                 'display_name' => 'to_LaxNum',
#                 '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'compiled_type_constraint'}
#               }, 'Type::Coercion' ),
#               'name' => 'LaxNum',
#               'library' => 'Types::Standard',
#               'display_name' => 'LaxNum',
#               '_overload_coderef' => sub { "DUMMY" },
#               'deprecated' => '',
#               '_overrides_assert_return' => '',
#               'inlined' => sub { "DUMMY" },
#               'constraint' => sub { "DUMMY" },
#               'definition_context' => {
#                 'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                 'line' => 300,
#                 'package' => 'Types::Standard'
#               },
#               'uniq' => 10
#             }, 'Type::Tiny' ),
#             'coercion' => bless( {
#               'frozen' => 1,
#               'name' => '__ANON__',
#               'type_coercion_map' => [],
#               'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'},
#               'display_name' => 'to_Num',
#               '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'compiled_type_constraint'}
#             }, 'Type::Coercion' ),
#             'name' => 'Num',
#             'library' => 'Types::Standard',
#             'display_name' => 'Num',
#             '_overload_coderef' => sub { "DUMMY" },
#             'deprecated' => '',
#             '_overrides_assert_return' => '',
#             'definition_context' => {
#               'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#               'line' => 335,
#               'package' => 'Types::Standard'
#             },
#             'constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'constraint'},
#             'uniq' => 12
#           }, 'Type::Tiny' ),
#           'coercion' => bless( {
#             'frozen' => 1,
#             'name' => '__ANON__',
#             'type_coercion_map' => [],
#             'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'},
#             'display_name' => 'to_Int',
#             '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'compiled_type_constraint'}
#           }, 'Type::Coercion' ),
#           'name' => 'Int',
#           'library' => 'Types::Standard',
#           'display_name' => 'Int',
#           '_is_core' => 1,
#           '_overload_coderef' => sub { "DUMMY" },
#           'deprecated' => '',
#           '_overrides_assert_return' => '',
#           'inlined' => sub { "DUMMY" },
#           'constraint' => sub { "DUMMY" },
#           'definition_context' => {
#             'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#             'line' => 352,
#             'package' => 'Types::Standard'
#           },
#           'uniq' => 13
#         }, 'Type::Tiny' ),
#         'where' => sub { "DUMMY" }
#       }
#     ]
#   },
#   'filename' => 't/40_type_tiny.t',
#   'candidate_name' => 'main::check_2x2::tt',
#   'linenum' => 63,
#   'args' => $mpc_impl->{'sig'}{'parms'},
#   'code' => sub { "DUMMY" }
# }; (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm:273)
# Copier for main::check_2x2::tt():
#  #line 276 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
# use strict;
# use warnings;
# sub {
# 
# #line 283 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#     if( $] lt '5.018' || $VERBOSE > 1) {
#         require Data::Dumper;
#         require Test::More;
#         Test::More::diag(sprintf("Positional copier invocation %d:\n%s",
#             ++$Sub::Multi::Tiny::Util::_positional_copier_invocation_number,
#             Data::Dumper->Dump([\@_],['copier_args'])));
#     }
# 
# #line 293 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#     (
# 
# #line 303 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#         $main::check_2x2::num
# #line 306 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#     ) = @_;
# 
#     if( $] lt '5.018' || $VERBOSE > 1) {
#         Test::More::diag(sprintf("After positional copier invocation %d:",
#             $Sub::Multi::Tiny::Util::_positional_copier_invocation_number));
#         Test::More::diag(join "\n", map {
#             sprintf("%s = %s", $_, eval($_))
#         } @vars);
#     }
# 
# } #copier
 (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm:319)
# $mpc_defined_in = 'main::check_2x2';
#  $mpc_impl = {
#   'sig' => {
#     'seen' => '',
#     'parms' => [
#       {
#         'named' => '',
#         'name' => '$num',
#         'reqd' => 1,
#         'type' => bless( {
#           'compiled_type_constraint' => sub { "DUMMY" },
#           'type_default' => sub { "DUMMY" },
#           'parent' => bless( {
#             'compiled_type_constraint' => sub { "DUMMY" },
#             'parent' => bless( {
#               'compiled_type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'compiled_type_constraint'},
#               'type_default' => sub { "DUMMY" },
#               'parent' => bless( {
#                 'sorter' => sub { "DUMMY" },
#                 'coercion' => bless( {
#                   'frozen' => 1,
#                   'name' => '__ANON__',
#                   'type_coercion_map' => [],
#                   'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'},
#                   'display_name' => 'to_Str',
#                   '_compiled_type_constraint_check' => sub { "DUMMY" }
#                 }, 'Type::Coercion' ),
#                 'library' => 'Types::Standard',
#                 'inlined' => sub { "DUMMY" },
#                 'constraint' => sub { "DUMMY" },
#                 'type_default' => sub { "DUMMY" },
#                 'compiled_type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'coercion'}{'_compiled_type_constraint_check'},
#                 'parent' => bless( {
#                   'compiled_type_constraint' => sub { "DUMMY" },
#                   'parent' => bless( {
#                     'compiled_type_constraint' => sub { "DUMMY" },
#                     'parent' => bless( {
#                       'compiled_type_constraint' => sub { "DUMMY" },
#                       'parent' => bless( {
#                         'compiled_type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'},
#                         'type_default' => sub { "DUMMY" },
#                         'coercion' => bless( {
#                           'frozen' => 1,
#                           'name' => '__ANON__',
#                           'type_coercion_map' => [],
#                           'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                           'display_name' => 'to_Any',
#                           '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                         }, 'Type::Coercion' ),
#                         'name' => 'Any',
#                         'library' => 'Types::Standard',
#                         'display_name' => 'Any',
#                         '_is_core' => 1,
#                         'complement_name' => 'None',
#                         '_overload_coderef' => sub { "DUMMY" },
#                         'deprecated' => '',
#                         '_overrides_assert_return' => '',
#                         'constraint' => sub { "DUMMY" },
#                         'inlined' => sub { "DUMMY" },
#                         'definition_context' => {
#                           'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                           'line' => 211,
#                           'package' => 'Types::Standard'
#                         },
#                         'uniq' => 1
#                       }, 'Type::Tiny' ),
#                       'coercion' => bless( {
#                         'frozen' => 1,
#                         'name' => '__ANON__',
#                         'type_coercion_map' => [],
#                         'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                         'display_name' => 'to_Item',
#                         '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                       }, 'Type::Coercion' ),
#                       'name' => 'Item',
#                       'library' => 'Types::Standard',
#                       'display_name' => 'Item',
#                       '_is_core' => 1,
#                       '_overload_coderef' => sub { "DUMMY" },
#                       'deprecated' => '',
#                       '_overrides_assert_return' => '',
#                       'constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'constraint'},
#                       'inlined' => sub { "DUMMY" },
#                       'definition_context' => {
#                         'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                         'line' => 217,
#                         'package' => 'Types::Standard'
#                       },
#                       'uniq' => 2
#                     }, 'Type::Tiny' ),
#                     'coercion' => bless( {
#                       'frozen' => 1,
#                       'name' => '__ANON__',
#                       'type_coercion_map' => [],
#                       'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                       'display_name' => 'to_Defined',
#                       '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                     }, 'Type::Coercion' ),
#                     'name' => 'Defined',
#                     'library' => 'Types::Standard',
#                     'display_name' => 'Defined',
#                     '_is_core' => 1,
#                     '_overload_coderef' => sub { "DUMMY" },
#                     'deprecated' => '',
#                     '_overrides_assert_return' => '',
#                     'complementary_type' => bless( {
#                       'coercion' => bless( {
#                         'frozen' => 1,
#                         'name' => '__ANON__',
#                         'type_coercion_map' => [],
#                         'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'complementary_type'},
#                         'display_name' => 'to_Undef',
#                         '_compiled_type_constraint_check' => sub { "DUMMY" }
#                       }, 'Type::Coercion' ),
#                       'library' => 'Types::Standard',
#                       'complementary_type' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                       'inlined' => sub { "DUMMY" },
#                       'constraint' => sub { "DUMMY" },
#                       'type_default' => sub { "DUMMY" },
#                       'compiled_type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'complementary_type'}{'coercion'}{'_compiled_type_constraint_check'},
#                       'parent' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                       'name' => 'Undef',
#                       '_is_core' => 1,
#                       'display_name' => 'Undef',
#                       '_overload_coderef' => sub { "DUMMY" },
#                       'deprecated' => '',
#                       '_overrides_assert_return' => '',
#                       'definition_context' => {
#                         'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                         'line' => 245,
#                         'package' => 'Types::Standard'
#                       },
#                       'uniq' => 6
#                     }, 'Type::Tiny' ),
#                     'inlined' => sub { "DUMMY" },
#                     'constraint' => sub { "DUMMY" },
#                     'definition_context' => {
#                       'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                       'line' => 253,
#                       'package' => 'Types::Standard'
#                     },
#                     'uniq' => 7
#                   }, 'Type::Tiny' ),
#                   'coercion' => bless( {
#                     'frozen' => 1,
#                     'name' => '__ANON__',
#                     'type_coercion_map' => [],
#                     'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'},
#                     'display_name' => 'to_Value',
#                     '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                   }, 'Type::Coercion' ),
#                   'name' => 'Value',
#                   'library' => 'Types::Standard',
#                   'display_name' => 'Value',
#                   '_is_core' => 1,
#                   '_overload_coderef' => sub { "DUMMY" },
#                   'deprecated' => '',
#                   '_overrides_assert_return' => '',
#                   'inlined' => sub { "DUMMY" },
#                   'constraint' => sub { "DUMMY" },
#                   'definition_context' => {
#                     'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                     'line' => 267,
#                     'package' => 'Types::Standard'
#                   },
#                   'uniq' => 8
#                 }, 'Type::Tiny' ),
#                 'name' => 'Str',
#                 '_is_core' => 1,
#                 'display_name' => 'Str',
#                 '_overload_coderef' => sub { "DUMMY" },
#                 'deprecated' => '',
#                 '_overrides_assert_return' => '',
#                 'definition_context' => {
#                   'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                   'line' => 282,
#                   'package' => 'Types::Standard'
#                 },
#                 'uniq' => 9
#               }, 'Type::Tiny' ),
#               'sorter' => sub { "DUMMY" },
#               'coercion' => bless( {
#                 'frozen' => 1,
#                 'name' => '__ANON__',
#                 'type_coercion_map' => [],
#                 'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'},
#                 'display_name' => 'to_LaxNum',
#                 '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'compiled_type_constraint'}
#               }, 'Type::Coercion' ),
#               'name' => 'LaxNum',
#               'library' => 'Types::Standard',
#               'display_name' => 'LaxNum',
#               '_overload_coderef' => sub { "DUMMY" },
#               'deprecated' => '',
#               '_overrides_assert_return' => '',
#               'inlined' => sub { "DUMMY" },
#               'constraint' => sub { "DUMMY" },
#               'definition_context' => {
#                 'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                 'line' => 300,
#                 'package' => 'Types::Standard'
#               },
#               'uniq' => 10
#             }, 'Type::Tiny' ),
#             'coercion' => bless( {
#               'frozen' => 1,
#               'name' => '__ANON__',
#               'type_coercion_map' => [],
#               'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'},
#               'display_name' => 'to_Num',
#               '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'compiled_type_constraint'}
#             }, 'Type::Coercion' ),
#             'name' => 'Num',
#             'library' => 'Types::Standard',
#             'display_name' => 'Num',
#             '_overload_coderef' => sub { "DUMMY" },
#             'deprecated' => '',
#             '_overrides_assert_return' => '',
#             'definition_context' => {
#               'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#               'line' => 335,
#               'package' => 'Types::Standard'
#             },
#             'constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'constraint'},
#             'uniq' => 12
#           }, 'Type::Tiny' ),
#           'coercion' => bless( {
#             'frozen' => 1,
#             'name' => '__ANON__',
#             'type_coercion_map' => [],
#             'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'},
#             'display_name' => 'to_Int',
#             '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'compiled_type_constraint'}
#           }, 'Type::Coercion' ),
#           'name' => 'Int',
#           'library' => 'Types::Standard',
#           'display_name' => 'Int',
#           '_is_core' => 1,
#           '_overload_coderef' => sub { "DUMMY" },
#           'deprecated' => '',
#           '_overrides_assert_return' => '',
#           'inlined' => sub { "DUMMY" },
#           'constraint' => sub { "DUMMY" },
#           'definition_context' => {
#             'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#             'line' => 352,
#             'package' => 'Types::Standard'
#           },
#           'uniq' => 13
#         }, 'Type::Tiny' ),
#         'where' => sub { "DUMMY" }
#       }
#     ]
#   },
#   'filename' => 't/40_type_tiny.t',
#   'candidate_name' => 'main::check_2x2::tf',
#   'linenum' => 64,
#   'args' => $mpc_impl->{'sig'}{'parms'},
#   'code' => sub { "DUMMY" }
# }; (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm:273)
# Copier for main::check_2x2::tf():
#  #line 276 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
# use strict;
# use warnings;
# sub {
# 
# #line 283 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#     if( $] lt '5.018' || $VERBOSE > 1) {
#         require Data::Dumper;
#         require Test::More;
#         Test::More::diag(sprintf("Positional copier invocation %d:\n%s",
#             ++$Sub::Multi::Tiny::Util::_positional_copier_invocation_number,
#             Data::Dumper->Dump([\@_],['copier_args'])));
#     }
# 
# #line 293 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#     (
# 
# #line 303 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#         $main::check_2x2::num
# #line 306 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#     ) = @_;
# 
#     if( $] lt '5.018' || $VERBOSE > 1) {
#         Test::More::diag(sprintf("After positional copier invocation %d:",
#             $Sub::Multi::Tiny::Util::_positional_copier_invocation_number));
#         Test::More::diag(join "\n", map {
#             sprintf("%s = %s", $_, eval($_))
#         } @vars);
#     }
# 
# } #copier
 (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm:319)
# $mpc_defined_in = 'main::check_2x2';
#  $mpc_impl = {
#   'sig' => {
#     'seen' => '',
#     'parms' => [
#       {
#         'named' => '',
#         'name' => '$num',
#         'reqd' => 1,
#         'type' => bless( {
#           'sorter' => sub { "DUMMY" },
#           'coercion' => bless( {
#             'frozen' => 1,
#             'name' => '__ANON__',
#             'type_coercion_map' => [],
#             'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'},
#             'display_name' => 'to_Str',
#             '_compiled_type_constraint_check' => sub { "DUMMY" }
#           }, 'Type::Coercion' ),
#           'library' => 'Types::Standard',
#           'inlined' => sub { "DUMMY" },
#           'constraint' => sub { "DUMMY" },
#           'type_default' => sub { "DUMMY" },
#           'compiled_type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'coercion'}{'_compiled_type_constraint_check'},
#           'parent' => bless( {
#             'compiled_type_constraint' => sub { "DUMMY" },
#             'parent' => bless( {
#               'compiled_type_constraint' => sub { "DUMMY" },
#               'parent' => bless( {
#                 'compiled_type_constraint' => sub { "DUMMY" },
#                 'parent' => bless( {
#                   'compiled_type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'},
#                   'type_default' => sub { "DUMMY" },
#                   'coercion' => bless( {
#                     'frozen' => 1,
#                     'name' => '__ANON__',
#                     'type_coercion_map' => [],
#                     'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'},
#                     'display_name' => 'to_Any',
#                     '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                   }, 'Type::Coercion' ),
#                   'name' => 'Any',
#                   'library' => 'Types::Standard',
#                   'display_name' => 'Any',
#                   '_is_core' => 1,
#                   'complement_name' => 'None',
#                   '_overload_coderef' => sub { "DUMMY" },
#                   'deprecated' => '',
#                   '_overrides_assert_return' => '',
#                   'constraint' => sub { "DUMMY" },
#                   'inlined' => sub { "DUMMY" },
#                   'definition_context' => {
#                     'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                     'line' => 211,
#                     'package' => 'Types::Standard'
#                   },
#                   'uniq' => 1
#                 }, 'Type::Tiny' ),
#                 'coercion' => bless( {
#                   'frozen' => 1,
#                   'name' => '__ANON__',
#                   'type_coercion_map' => [],
#                   'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'},
#                   'display_name' => 'to_Item',
#                   '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                 }, 'Type::Coercion' ),
#                 'name' => 'Item',
#                 'library' => 'Types::Standard',
#                 'display_name' => 'Item',
#                 '_is_core' => 1,
#                 '_overload_coderef' => sub { "DUMMY" },
#                 'deprecated' => '',
#                 '_overrides_assert_return' => '',
#                 'constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'constraint'},
#                 'inlined' => sub { "DUMMY" },
#                 'definition_context' => {
#                   'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                   'line' => 217,
#                   'package' => 'Types::Standard'
#                 },
#                 'uniq' => 2
#               }, 'Type::Tiny' ),
#               'coercion' => bless( {
#                 'frozen' => 1,
#                 'name' => '__ANON__',
#                 'type_coercion_map' => [],
#                 'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'},
#                 'display_name' => 'to_Defined',
#                 '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'compiled_type_constraint'}
#               }, 'Type::Coercion' ),
#               'name' => 'Defined',
#               'library' => 'Types::Standard',
#               'display_name' => 'Defined',
#               '_is_core' => 1,
#               '_overload_coderef' => sub { "DUMMY" },
#               'deprecated' => '',
#               '_overrides_assert_return' => '',
#               'complementary_type' => bless( {
#                 'coercion' => bless( {
#                   'frozen' => 1,
#                   'name' => '__ANON__',
#                   'type_coercion_map' => [],
#                   'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'complementary_type'},
#                   'display_name' => 'to_Undef',
#                   '_compiled_type_constraint_check' => sub { "DUMMY" }
#                 }, 'Type::Coercion' ),
#                 'library' => 'Types::Standard',
#                 'complementary_type' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'},
#                 'inlined' => sub { "DUMMY" },
#                 'constraint' => sub { "DUMMY" },
#                 'type_default' => sub { "DUMMY" },
#                 'compiled_type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'complementary_type'}{'coercion'}{'_compiled_type_constraint_check'},
#                 'parent' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'},
#                 'name' => 'Undef',
#                 '_is_core' => 1,
#                 'display_name' => 'Undef',
#                 '_overload_coderef' => sub { "DUMMY" },
#                 'deprecated' => '',
#                 '_overrides_assert_return' => '',
#                 'definition_context' => {
#                   'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                   'line' => 245,
#                   'package' => 'Types::Standard'
#                 },
#                 'uniq' => 6
#               }, 'Type::Tiny' ),
#               'inlined' => sub { "DUMMY" },
#               'constraint' => sub { "DUMMY" },
#               'definition_context' => {
#                 'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                 'line' => 253,
#                 'package' => 'Types::Standard'
#               },
#               'uniq' => 7
#             }, 'Type::Tiny' ),
#             'coercion' => bless( {
#               'frozen' => 1,
#               'name' => '__ANON__',
#               'type_coercion_map' => [],
#               'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'},
#               'display_name' => 'to_Value',
#               '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'compiled_type_constraint'}
#             }, 'Type::Coercion' ),
#             'name' => 'Value',
#             'library' => 'Types::Standard',
#             'display_name' => 'Value',
#             '_is_core' => 1,
#             '_overload_coderef' => sub { "DUMMY" },
#             'deprecated' => '',
#             '_overrides_assert_return' => '',
#             'inlined' => sub { "DUMMY" },
#             'constraint' => sub { "DUMMY" },
#             'definition_context' => {
#               'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#               'line' => 267,
#               'package' => 'Types::Standard'
#             },
#             'uniq' => 8
#           }, 'Type::Tiny' ),
#           'name' => 'Str',
#           '_is_core' => 1,
#           'display_name' => 'Str',
#           '_overload_coderef' => sub { "DUMMY" },
#           'deprecated' => '',
#           '_overrides_assert_return' => '',
#           'definition_context' => {
#             'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#             'line' => 282,
#             'package' => 'Types::Standard'
#           },
#           'uniq' => 9
#         }, 'Type::Tiny' ),
#         'where' => sub { "DUMMY" }
#       }
#     ]
#   },
#   'filename' => 't/40_type_tiny.t',
#   'candidate_name' => 'main::check_2x2::ft',
#   'linenum' => 65,
#   'args' => $mpc_impl->{'sig'}{'parms'},
#   'code' => sub { "DUMMY" }
# }; (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm:273)
# Copier for main::check_2x2::ft():
#  #line 276 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
# use strict;
# use warnings;
# sub {
# 
# #line 283 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#     if( $] lt '5.018' || $VERBOSE > 1) {
#         require Data::Dumper;
#         require Test::More;
#         Test::More::diag(sprintf("Positional copier invocation %d:\n%s",
#             ++$Sub::Multi::Tiny::Util::_positional_copier_invocation_number,
#             Data::Dumper->Dump([\@_],['copier_args'])));
#     }
# 
# #line 293 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#     (
# 
# #line 303 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#         $main::check_2x2::num
# #line 306 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#     ) = @_;
# 
#     if( $] lt '5.018' || $VERBOSE > 1) {
#         Test::More::diag(sprintf("After positional copier invocation %d:",
#             $Sub::Multi::Tiny::Util::_positional_copier_invocation_number));
#         Test::More::diag(join "\n", map {
#             sprintf("%s = %s", $_, eval($_))
#         } @vars);
#     }
# 
# } #copier
 (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm:319)
# $mpc_defined_in = 'main::check_2x2';
#  $mpc_impl = {
#   'sig' => {
#     'seen' => '',
#     'parms' => [
#       {
#         'named' => '',
#         'name' => '$num',
#         'reqd' => 1,
#         'type' => bless( {
#           'sorter' => sub { "DUMMY" },
#           'coercion' => bless( {
#             'frozen' => 1,
#             'name' => '__ANON__',
#             'type_coercion_map' => [],
#             'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'},
#             'display_name' => 'to_Str',
#             '_compiled_type_constraint_check' => sub { "DUMMY" }
#           }, 'Type::Coercion' ),
#           'library' => 'Types::Standard',
#           'inlined' => sub { "DUMMY" },
#           'constraint' => sub { "DUMMY" },
#           'type_default' => sub { "DUMMY" },
#           'compiled_type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'coercion'}{'_compiled_type_constraint_check'},
#           'parent' => bless( {
#             'compiled_type_constraint' => sub { "DUMMY" },
#             'parent' => bless( {
#               'compiled_type_constraint' => sub { "DUMMY" },
#               'parent' => bless( {
#                 'compiled_type_constraint' => sub { "DUMMY" },
#                 'parent' => bless( {
#                   'compiled_type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'},
#                   'type_default' => sub { "DUMMY" },
#                   'coercion' => bless( {
#                     'frozen' => 1,
#                     'name' => '__ANON__',
#                     'type_coercion_map' => [],
#                     'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'},
#                     'display_name' => 'to_Any',
#                     '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                   }, 'Type::Coercion' ),
#                   'name' => 'Any',
#                   'library' => 'Types::Standard',
#                   'display_name' => 'Any',
#                   '_is_core' => 1,
#                   'complement_name' => 'None',
#                   '_overload_coderef' => sub { "DUMMY" },
#                   'deprecated' => '',
#                   '_overrides_assert_return' => '',
#                   'constraint' => sub { "DUMMY" },
#                   'inlined' => sub { "DUMMY" },
#                   'definition_context' => {
#                     'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                     'line' => 211,
#                     'package' => 'Types::Standard'
#                   },
#                   'uniq' => 1
#                 }, 'Type::Tiny' ),
#                 'coercion' => bless( {
#                   'frozen' => 1,
#                   'name' => '__ANON__',
#                   'type_coercion_map' => [],
#                   'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'},
#                   'display_name' => 'to_Item',
#                   '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                 }, 'Type::Coercion' ),
#                 'name' => 'Item',
#                 'library' => 'Types::Standard',
#                 'display_name' => 'Item',
#                 '_is_core' => 1,
#                 '_overload_coderef' => sub { "DUMMY" },
#                 'deprecated' => '',
#                 '_overrides_assert_return' => '',
#                 'constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'constraint'},
#                 'inlined' => sub { "DUMMY" },
#                 'definition_context' => {
#                   'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                   'line' => 217,
#                   'package' => 'Types::Standard'
#                 },
#                 'uniq' => 2
#               }, 'Type::Tiny' ),
#               'coercion' => bless( {
#                 'frozen' => 1,
#                 'name' => '__ANON__',
#                 'type_coercion_map' => [],
#                 'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'},
#                 'display_name' => 'to_Defined',
#                 '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'compiled_type_constraint'}
#               }, 'Type::Coercion' ),
#               'name' => 'Defined',
#               'library' => 'Types::Standard',
#               'display_name' => 'Defined',
#               '_is_core' => 1,
#               '_overload_coderef' => sub { "DUMMY" },
#               'deprecated' => '',
#               '_overrides_assert_return' => '',
#               'complementary_type' => bless( {
#                 'coercion' => bless( {
#                   'frozen' => 1,
#                   'name' => '__ANON__',
#                   'type_coercion_map' => [],
#                   'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'complementary_type'},
#                   'display_name' => 'to_Undef',
#                   '_compiled_type_constraint_check' => sub { "DUMMY" }
#                 }, 'Type::Coercion' ),
#                 'library' => 'Types::Standard',
#                 'complementary_type' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'},
#                 'inlined' => sub { "DUMMY" },
#                 'constraint' => sub { "DUMMY" },
#                 'type_default' => sub { "DUMMY" },
#                 'compiled_type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'complementary_type'}{'coercion'}{'_compiled_type_constraint_check'},
#                 'parent' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'},
#                 'name' => 'Undef',
#                 '_is_core' => 1,
#                 'display_name' => 'Undef',
#                 '_overload_coderef' => sub { "DUMMY" },
#                 'deprecated' => '',
#                 '_overrides_assert_return' => '',
#                 'definition_context' => {
#                   'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                   'line' => 245,
#                   'package' => 'Types::Standard'
#                 },
#                 'uniq' => 6
#               }, 'Type::Tiny' ),
#               'inlined' => sub { "DUMMY" },
#               'constraint' => sub { "DUMMY" },
#               'definition_context' => {
#                 'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                 'line' => 253,
#                 'package' => 'Types::Standard'
#               },
#               'uniq' => 7
#             }, 'Type::Tiny' ),
#             'coercion' => bless( {
#               'frozen' => 1,
#               'name' => '__ANON__',
#               'type_coercion_map' => [],
#               'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'},
#               'display_name' => 'to_Value',
#               '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'compiled_type_constraint'}
#             }, 'Type::Coercion' ),
#             'name' => 'Value',
#             'library' => 'Types::Standard',
#             'display_name' => 'Value',
#             '_is_core' => 1,
#             '_overload_coderef' => sub { "DUMMY" },
#             'deprecated' => '',
#             '_overrides_assert_return' => '',
#             'inlined' => sub { "DUMMY" },
#             'constraint' => sub { "DUMMY" },
#             'definition_context' => {
#               'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#               'line' => 267,
#               'package' => 'Types::Standard'
#             },
#             'uniq' => 8
#           }, 'Type::Tiny' ),
#           'name' => 'Str',
#           '_is_core' => 1,
#           'display_name' => 'Str',
#           '_overload_coderef' => sub { "DUMMY" },
#           'deprecated' => '',
#           '_overrides_assert_return' => '',
#           'definition_context' => {
#             'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#             'line' => 282,
#             'package' => 'Types::Standard'
#           },
#           'uniq' => 9
#         }, 'Type::Tiny' ),
#         'where' => sub { "DUMMY" }
#       }
#     ]
#   },
#   'filename' => 't/40_type_tiny.t',
#   'candidate_name' => 'main::check_2x2::ff',
#   'linenum' => 66,
#   'args' => $mpc_impl->{'sig'}{'parms'},
#   'code' => sub { "DUMMY" }
# }; (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm:273)
# Copier for main::check_2x2::ff():
#  #line 276 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
# use strict;
# use warnings;
# sub {
# 
# #line 283 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#     if( $] lt '5.018' || $VERBOSE > 1) {
#         require Data::Dumper;
#         require Test::More;
#         Test::More::diag(sprintf("Positional copier invocation %d:\n%s",
#             ++$Sub::Multi::Tiny::Util::_positional_copier_invocation_number,
#             Data::Dumper->Dump([\@_],['copier_args'])));
#     }
# 
# #line 293 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#     (
# 
# #line 303 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#         $main::check_2x2::num
# #line 306 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#     ) = @_;
# 
#     if( $] lt '5.018' || $VERBOSE > 1) {
#         Test::More::diag(sprintf("After positional copier invocation %d:",
#             $Sub::Multi::Tiny::Util::_positional_copier_invocation_number));
#         Test::More::diag(join "\n", map {
#             sprintf("%s = %s", $_, eval($_))
#         } @vars);
#     }
# 
# } #copier
 (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm:319)
# _complete_dispatcher making Sub::Multi::Tiny::Dispatcher::TypeParams dispatcher with args: $multisub = {
#   'impls' => [
#     {
#       'sig' => {
#         'seen' => '',
#         'parms' => [
#           {
#             'named' => '',
#             'name' => '$num',
#             'reqd' => 1,
#             'type' => bless( {
#               'compiled_type_constraint' => sub { "DUMMY" },
#               'type_default' => sub { "DUMMY" },
#               'parent' => bless( {
#                 'compiled_type_constraint' => sub { "DUMMY" },
#                 'parent' => bless( {
#                   'compiled_type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'compiled_type_constraint'},
#                   'type_default' => sub { "DUMMY" },
#                   'parent' => bless( {
#                     'sorter' => sub { "DUMMY" },
#                     'coercion' => bless( {
#                       'frozen' => 1,
#                       'name' => '__ANON__',
#                       'type_coercion_map' => [],
#                       'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'},
#                       'display_name' => 'to_Str',
#                       '_compiled_type_constraint_check' => sub { "DUMMY" }
#                     }, 'Type::Coercion' ),
#                     'library' => 'Types::Standard',
#                     'inlined' => sub { "DUMMY" },
#                     'constraint' => sub { "DUMMY" },
#                     'type_default' => sub { "DUMMY" },
#                     'compiled_type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'coercion'}{'_compiled_type_constraint_check'},
#                     'parent' => bless( {
#                       'compiled_type_constraint' => sub { "DUMMY" },
#                       'parent' => bless( {
#                         'compiled_type_constraint' => sub { "DUMMY" },
#                         'parent' => bless( {
#                           'compiled_type_constraint' => sub { "DUMMY" },
#                           'parent' => bless( {
#                             'compiled_type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'},
#                             'type_default' => sub { "DUMMY" },
#                             'coercion' => bless( {
#                               'frozen' => 1,
#                               'name' => '__ANON__',
#                               'type_coercion_map' => [],
#                               'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                               'display_name' => 'to_Any',
#                               '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                             }, 'Type::Coercion' ),
#                             'name' => 'Any',
#                             'library' => 'Types::Standard',
#                             'display_name' => 'Any',
#                             '_is_core' => 1,
#                             'complement_name' => 'None',
#                             '_overload_coderef' => sub { "DUMMY" },
#                             'deprecated' => '',
#                             '_overrides_assert_return' => '',
#                             'constraint' => sub { "DUMMY" },
#                             'inlined' => sub { "DUMMY" },
#                             'definition_context' => {
#                               'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                               'line' => 211,
#                               'package' => 'Types::Standard'
#                             },
#                             'uniq' => 1
#                           }, 'Type::Tiny' ),
#                           'coercion' => bless( {
#                             'frozen' => 1,
#                             'name' => '__ANON__',
#                             'type_coercion_map' => [],
#                             'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                             'display_name' => 'to_Item',
#                             '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                           }, 'Type::Coercion' ),
#                           'name' => 'Item',
#                           'library' => 'Types::Standard',
#                           'display_name' => 'Item',
#                           '_is_core' => 1,
#                           '_overload_coderef' => sub { "DUMMY" },
#                           'deprecated' => '',
#                           '_overrides_assert_return' => '',
#                           'constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'constraint'},
#                           'inlined' => sub { "DUMMY" },
#                           'definition_context' => {
#                             'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                             'line' => 217,
#                             'package' => 'Types::Standard'
#                           },
#                           'uniq' => 2
#                         }, 'Type::Tiny' ),
#                         'coercion' => bless( {
#                           'frozen' => 1,
#                           'name' => '__ANON__',
#                           'type_coercion_map' => [],
#                           'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                           'display_name' => 'to_Defined',
#                           '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                         }, 'Type::Coercion' ),
#                         'name' => 'Defined',
#                         'library' => 'Types::Standard',
#                         'display_name' => 'Defined',
#                         '_is_core' => 1,
#                         '_overload_coderef' => sub { "DUMMY" },
#                         'deprecated' => '',
#                         '_overrides_assert_return' => '',
#                         'complementary_type' => bless( {
#                           'coercion' => bless( {
#                             'frozen' => 1,
#                             'name' => '__ANON__',
#                             'type_coercion_map' => [],
#                             'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'complementary_type'},
#                             'display_name' => 'to_Undef',
#                             '_compiled_type_constraint_check' => sub { "DUMMY" }
#                           }, 'Type::Coercion' ),
#                           'library' => 'Types::Standard',
#                           'complementary_type' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                           'inlined' => sub { "DUMMY" },
#                           'constraint' => sub { "DUMMY" },
#                           'type_default' => sub { "DUMMY" },
#                           'compiled_type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'complementary_type'}{'coercion'}{'_compiled_type_constraint_check'},
#                           'parent' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                           'name' => 'Undef',
#                           '_is_core' => 1,
#                           'display_name' => 'Undef',
#                           '_overload_coderef' => sub { "DUMMY" },
#                           'deprecated' => '',
#                           '_overrides_assert_return' => '',
#                           'definition_context' => {
#                             'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                             'line' => 245,
#                             'package' => 'Types::Standard'
#                           },
#                           'uniq' => 6
#                         }, 'Type::Tiny' ),
#                         'inlined' => sub { "DUMMY" },
#                         'constraint' => sub { "DUMMY" },
#                         'definition_context' => {
#                           'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                           'line' => 253,
#                           'package' => 'Types::Standard'
#                         },
#                         'uniq' => 7
#                       }, 'Type::Tiny' ),
#                       'coercion' => bless( {
#                         'frozen' => 1,
#                         'name' => '__ANON__',
#                         'type_coercion_map' => [],
#                         'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'},
#                         'display_name' => 'to_Value',
#                         '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                       }, 'Type::Coercion' ),
#                       'name' => 'Value',
#                       'library' => 'Types::Standard',
#                       'display_name' => 'Value',
#                       '_is_core' => 1,
#                       '_overload_coderef' => sub { "DUMMY" },
#                       'deprecated' => '',
#                       '_overrides_assert_return' => '',
#                       'inlined' => sub { "DUMMY" },
#                       'constraint' => sub { "DUMMY" },
#                       'definition_context' => {
#                         'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                         'line' => 267,
#                         'package' => 'Types::Standard'
#                       },
#                       'uniq' => 8
#                     }, 'Type::Tiny' ),
#                     'name' => 'Str',
#                     '_is_core' => 1,
#                     'display_name' => 'Str',
#                     '_overload_coderef' => sub { "DUMMY" },
#                     'deprecated' => '',
#                     '_overrides_assert_return' => '',
#                     'definition_context' => {
#                       'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                       'line' => 282,
#                       'package' => 'Types::Standard'
#                     },
#                     'uniq' => 9
#                   }, 'Type::Tiny' ),
#                   'sorter' => sub { "DUMMY" },
#                   'coercion' => bless( {
#                     'frozen' => 1,
#                     'name' => '__ANON__',
#                     'type_coercion_map' => [],
#                     'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'},
#                     'display_name' => 'to_LaxNum',
#                     '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'compiled_type_constraint'}
#                   }, 'Type::Coercion' ),
#                   'name' => 'LaxNum',
#                   'library' => 'Types::Standard',
#                   'display_name' => 'LaxNum',
#                   '_overload_coderef' => sub { "DUMMY" },
#                   'deprecated' => '',
#                   '_overrides_assert_return' => '',
#                   'inlined' => sub { "DUMMY" },
#                   'constraint' => sub { "DUMMY" },
#                   'definition_context' => {
#                     'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                     'line' => 300,
#                     'package' => 'Types::Standard'
#                   },
#                   'uniq' => 10
#                 }, 'Type::Tiny' ),
#                 'coercion' => bless( {
#                   'frozen' => 1,
#                   'name' => '__ANON__',
#                   'type_coercion_map' => [],
#                   'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'},
#                   'display_name' => 'to_Num',
#                   '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'compiled_type_constraint'}
#                 }, 'Type::Coercion' ),
#                 'name' => 'Num',
#                 'library' => 'Types::Standard',
#                 'display_name' => 'Num',
#                 '_overload_coderef' => sub { "DUMMY" },
#                 'deprecated' => '',
#                 '_overrides_assert_return' => '',
#                 'definition_context' => {
#                   'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                   'line' => 335,
#                   'package' => 'Types::Standard'
#                 },
#                 'constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'constraint'},
#                 'uniq' => 12
#               }, 'Type::Tiny' ),
#               'coercion' => bless( {
#                 'frozen' => 1,
#                 'name' => '__ANON__',
#                 'type_coercion_map' => [],
#                 'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'},
#                 'display_name' => 'to_Int',
#                 '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'compiled_type_constraint'}
#               }, 'Type::Coercion' ),
#               'name' => 'Int',
#               'library' => 'Types::Standard',
#               'display_name' => 'Int',
#               '_is_core' => 1,
#               '_overload_coderef' => sub { "DUMMY" },
#               'deprecated' => '',
#               '_overrides_assert_return' => '',
#               'inlined' => sub { "DUMMY" },
#               'constraint' => sub { "DUMMY" },
#               'definition_context' => {
#                 'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                 'line' => 352,
#                 'package' => 'Types::Standard'
#               },
#               'uniq' => 13
#             }, 'Type::Tiny' ),
#             'where' => sub { "DUMMY" }
#           }
#         ]
#       },
#       'filename' => 't/40_type_tiny.t',
#       'candidate_name' => 'main::check_2x2::tt',
#       'linenum' => 63,
#       'args' => $multisub->{'impls'}[0]{'sig'}{'parms'},
#       'code' => sub { "DUMMY" }
#     },
#     {
#       'sig' => {
#         'seen' => '',
#         'parms' => [
#           {
#             'named' => '',
#             'name' => '$num',
#             'reqd' => 1,
#             'type' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'},
#             'where' => sub { "DUMMY" }
#           }
#         ]
#       },
#       'filename' => 't/40_type_tiny.t',
#       'candidate_name' => 'main::check_2x2::tf',
#       'linenum' => 64,
#       'args' => $multisub->{'impls'}[1]{'sig'}{'parms'},
#       'code' => sub { "DUMMY" }
#     },
#     {
#       'sig' => {
#         'seen' => '',
#         'parms' => [
#           {
#             'named' => '',
#             'name' => '$num',
#             'reqd' => 1,
#             'type' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'},
#             'where' => sub { "DUMMY" }
#           }
#         ]
#       },
#       'filename' => 't/40_type_tiny.t',
#       'candidate_name' => 'main::check_2x2::ft',
#       'linenum' => 65,
#       'args' => $multisub->{'impls'}[2]{'sig'}{'parms'},
#       'code' => sub { "DUMMY" }
#     },
#     {
#       'sig' => {
#         'seen' => '',
#         'parms' => [
#           {
#             'named' => '',
#             'name' => '$num',
#             'reqd' => 1,
#             'type' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'},
#             'where' => sub { "DUMMY" }
#           }
#         ]
#       },
#       'filename' => 't/40_type_tiny.t',
#       'candidate_name' => 'main::check_2x2::ff',
#       'linenum' => 66,
#       'args' => $multisub->{'impls'}[3]{'sig'}{'parms'},
#       'code' => sub { "DUMMY" }
#     }
#   ],
#   'used_by' => 'main',
#   'subname' => 'check_2x2',
#   'possible_params' => {
#     '$num' => 1
#   },
#   'defined_in' => 'main::check_2x2'
# };
#  $inner_code = '#line 130 "C:\\strawberry\\cpan\\build\\Sub-Multi-Tiny-0.000013-0\\blib\\lib/Sub/Multi/Tiny/Dispatcher/TypeParams.pm"
#             # Find the candidate
#             @_ = $data[0]->(@_);      # $checker.  Dies on error.
#                 # NOTE: this change can\'t be `local`ized because `goto`
#                 # undoes the `local` - see #8
#             $candidate = $data[1]->[${^_TYPE_PARAMS_MULTISIG}];   # impls
#             $copier = $data[2]->[${^_TYPE_PARAMS_MULTISIG}];      # copiers
# 
# ';
#  $data = sub { "DUMMY" };
#  $VAR4 = [
#   $multisub->{'impls'}[0]{'code'},
#   $multisub->{'impls'}[1]{'code'},
#   $multisub->{'impls'}[2]{'code'},
#   $multisub->{'impls'}[3]{'code'}
# ];
#  $VAR5 = [
#   sub { "DUMMY" },
#   sub { "DUMMY" },
#   sub { "DUMMY" },
#   sub { "DUMMY" }
# ]; (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm:200)
# Sub::Multi::Tiny::Dispatcher::TypeParams dispatcher for main::check_2x2():
# #line 204 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#         use strict;
#         use warnings;
#         sub {
#             # Find the candidate
#             my ($candidate, $copier);
# 
# #line 130 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Dispatcher/TypeParams.pm"
#             # Find the candidate
#             @_ = $data[0]->(@_);      # $checker.  Dies on error.
#                 # NOTE: this change can't be `local`ized because `goto`
#                 # undoes the `local` - see #8
#             $candidate = $data[1]->[${^_TYPE_PARAMS_MULTISIG}];   # impls
#             $copier = $data[2]->[${^_TYPE_PARAMS_MULTISIG}];      # copiers
# 
# 
# 
#             # Save the present values of the parameters
# 
# #line 219 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
# my $saved_num = $main::check_2x2::num;
# 
# #line 225 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#             # Create the guard
#             my $guard = Guard::guard {
# 
# #line 221 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
# $main::check_2x2::num = $saved_num;
# 
# 
# 
#             }; #End of guard
# 
# #line 234 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
# 
#             # Copy the parameters into the variables the candidate
#             # will access them from
#             &$copier;   # $copier gets @_ automatically
# 
#             # Pass the guard so the parameters will be reset once \$candidate
#             # finishes running.
#             @_ = ($guard);
# 
#             # Invoke the selected candidate
#             goto &$candidate;
#         } #dispatcher
# 
 (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm:248)
# Making Type::Params dispatcher for:  $multisub = {
#   'impls' => [
#     {
#       'sig' => {
#         'seen' => '',
#         'parms' => [
#           {
#             'named' => '',
#             'name' => '$num',
#             'reqd' => 1,
#             'where' => sub { "DUMMY" }
#           }
#         ]
#       },
#       'filename' => 't/40_type_tiny.t',
#       'candidate_name' => 'main::check_int::small',
#       'linenum' => 42,
#       'args' => $multisub->{'impls'}[0]{'sig'}{'parms'},
#       'code' => sub { "DUMMY" }
#     },
#     {
#       'sig' => {
#         'seen' => '',
#         'parms' => [
#           {
#             'named' => '',
#             'name' => '$num',
#             'reqd' => 1,
#             'where' => sub { "DUMMY" }
#           }
#         ]
#       },
#       'filename' => 't/40_type_tiny.t',
#       'candidate_name' => 'main::check_int::large',
#       'linenum' => 46,
#       'args' => $multisub->{'impls'}[1]{'sig'}{'parms'},
#       'code' => sub { "DUMMY" }
#     }
#   ],
#   'used_by' => 'main',
#   'subname' => 'check_int',
#   'possible_params' => {
#     '$num' => 1
#   },
#   'defined_in' => 'main::check_int'
# }; (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Dispatcher/TypeParams.pm:82)
# $mpc_defined_in = 'main::check_int';
#  $mpc_impl = {
#   'sig' => {
#     'seen' => '',
#     'parms' => [
#       {
#         'named' => '',
#         'name' => '$num',
#         'reqd' => 1,
#         'where' => sub { "DUMMY" }
#       }
#     ]
#   },
#   'filename' => 't/40_type_tiny.t',
#   'candidate_name' => 'main::check_int::small',
#   'linenum' => 42,
#   'args' => $mpc_impl->{'sig'}{'parms'},
#   'code' => sub { "DUMMY" }
# }; (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm:273)
# Copier for main::check_int::small():
#  #line 276 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
# use strict;
# use warnings;
# sub {
# 
# #line 283 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#     if( $] lt '5.018' || $VERBOSE > 1) {
#         require Data::Dumper;
#         require Test::More;
#         Test::More::diag(sprintf("Positional copier invocation %d:\n%s",
#             ++$Sub::Multi::Tiny::Util::_positional_copier_invocation_number,
#             Data::Dumper->Dump([\@_],['copier_args'])));
#     }
# 
# #line 293 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#     (
# 
# #line 303 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#         $main::check_int::num
# #line 306 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#     ) = @_;
# 
#     if( $] lt '5.018' || $VERBOSE > 1) {
#         Test::More::diag(sprintf("After positional copier invocation %d:",
#             $Sub::Multi::Tiny::Util::_positional_copier_invocation_number));
#         Test::More::diag(join "\n", map {
#             sprintf("%s = %s", $_, eval($_))
#         } @vars);
#     }
# 
# } #copier
 (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm:319)
# $mpc_defined_in = 'main::check_int';
#  $mpc_impl = {
#   'sig' => {
#     'seen' => '',
#     'parms' => [
#       {
#         'named' => '',
#         'name' => '$num',
#         'reqd' => 1,
#         'where' => sub { "DUMMY" }
#       }
#     ]
#   },
#   'filename' => 't/40_type_tiny.t',
#   'candidate_name' => 'main::check_int::large',
#   'linenum' => 46,
#   'args' => $mpc_impl->{'sig'}{'parms'},
#   'code' => sub { "DUMMY" }
# }; (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm:273)
# Copier for main::check_int::large():
#  #line 276 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
# use strict;
# use warnings;
# sub {
# 
# #line 283 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#     if( $] lt '5.018' || $VERBOSE > 1) {
#         require Data::Dumper;
#         require Test::More;
#         Test::More::diag(sprintf("Positional copier invocation %d:\n%s",
#             ++$Sub::Multi::Tiny::Util::_positional_copier_invocation_number,
#             Data::Dumper->Dump([\@_],['copier_args'])));
#     }
# 
# #line 293 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#     (
# 
# #line 303 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#         $main::check_int::num
# #line 306 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#     ) = @_;
# 
#     if( $] lt '5.018' || $VERBOSE > 1) {
#         Test::More::diag(sprintf("After positional copier invocation %d:",
#             $Sub::Multi::Tiny::Util::_positional_copier_invocation_number));
#         Test::More::diag(join "\n", map {
#             sprintf("%s = %s", $_, eval($_))
#         } @vars);
#     }
# 
# } #copier
 (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm:319)
# _complete_dispatcher making Sub::Multi::Tiny::Dispatcher::TypeParams dispatcher with args: $multisub = {
#   'impls' => [
#     {
#       'sig' => {
#         'seen' => '',
#         'parms' => [
#           {
#             'named' => '',
#             'name' => '$num',
#             'reqd' => 1,
#             'where' => sub { "DUMMY" }
#           }
#         ]
#       },
#       'filename' => 't/40_type_tiny.t',
#       'candidate_name' => 'main::check_int::small',
#       'linenum' => 42,
#       'args' => $multisub->{'impls'}[0]{'sig'}{'parms'},
#       'code' => sub { "DUMMY" }
#     },
#     {
#       'sig' => {
#         'seen' => '',
#         'parms' => [
#           {
#             'named' => '',
#             'name' => '$num',
#             'reqd' => 1,
#             'where' => sub { "DUMMY" }
#           }
#         ]
#       },
#       'filename' => 't/40_type_tiny.t',
#       'candidate_name' => 'main::check_int::large',
#       'linenum' => 46,
#       'args' => $multisub->{'impls'}[1]{'sig'}{'parms'},
#       'code' => sub { "DUMMY" }
#     }
#   ],
#   'used_by' => 'main',
#   'subname' => 'check_int',
#   'possible_params' => {
#     '$num' => 1
#   },
#   'defined_in' => 'main::check_int'
# };
#  $inner_code = '#line 130 "C:\\strawberry\\cpan\\build\\Sub-Multi-Tiny-0.000013-0\\blib\\lib/Sub/Multi/Tiny/Dispatcher/TypeParams.pm"
#             # Find the candidate
#             @_ = $data[0]->(@_);      # $checker.  Dies on error.
#                 # NOTE: this change can\'t be `local`ized because `goto`
#                 # undoes the `local` - see #8
#             $candidate = $data[1]->[${^_TYPE_PARAMS_MULTISIG}];   # impls
#             $copier = $data[2]->[${^_TYPE_PARAMS_MULTISIG}];      # copiers
# 
# ';
#  $data = sub { "DUMMY" };
#  $VAR4 = [
#   $multisub->{'impls'}[0]{'code'},
#   $multisub->{'impls'}[1]{'code'}
# ];
#  $VAR5 = [
#   sub { "DUMMY" },
#   sub { "DUMMY" }
# ]; (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm:200)
# Sub::Multi::Tiny::Dispatcher::TypeParams dispatcher for main::check_int():
# #line 204 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#         use strict;
#         use warnings;
#         sub {
#             # Find the candidate
#             my ($candidate, $copier);
# 
# #line 130 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Dispatcher/TypeParams.pm"
#             # Find the candidate
#             @_ = $data[0]->(@_);      # $checker.  Dies on error.
#                 # NOTE: this change can't be `local`ized because `goto`
#                 # undoes the `local` - see #8
#             $candidate = $data[1]->[${^_TYPE_PARAMS_MULTISIG}];   # impls
#             $copier = $data[2]->[${^_TYPE_PARAMS_MULTISIG}];      # copiers
# 
# 
# 
#             # Save the present values of the parameters
# 
# #line 219 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
# my $saved_num = $main::check_int::num;
# 
# #line 225 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#             # Create the guard
#             my $guard = Guard::guard {
# 
# #line 221 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
# $main::check_int::num = $saved_num;
# 
# 
# 
#             }; #End of guard
# 
# #line 234 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
# 
#             # Copy the parameters into the variables the candidate
#             # will access them from
#             &$copier;   # $copier gets @_ automatically
# 
#             # Pass the guard so the parameters will be reset once \$candidate
#             # finishes running.
#             @_ = ($guard);
# 
#             # Invoke the selected candidate
#             goto &$candidate;
#         } #dispatcher
# 
 (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm:248)
# Making Type::Params dispatcher for:  $multisub = {
#   'impls' => [
#     {
#       'sig' => {
#         'seen' => '',
#         'parms' => [
#           {
#             'named' => '',
#             'name' => '$foo',
#             'reqd' => 1,
#             'type' => bless( {
#               'compiled_type_constraint' => sub { "DUMMY" },
#               'type_default' => sub { "DUMMY" },
#               'parent' => bless( {
#                 'compiled_type_constraint' => sub { "DUMMY" },
#                 'parent' => bless( {
#                   'compiled_type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'compiled_type_constraint'},
#                   'type_default' => sub { "DUMMY" },
#                   'parent' => bless( {
#                     'sorter' => sub { "DUMMY" },
#                     'coercion' => bless( {
#                       'frozen' => 1,
#                       'name' => '__ANON__',
#                       'type_coercion_map' => [],
#                       'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'},
#                       'display_name' => 'to_Str',
#                       '_compiled_type_constraint_check' => sub { "DUMMY" }
#                     }, 'Type::Coercion' ),
#                     'library' => 'Types::Standard',
#                     'inlined' => sub { "DUMMY" },
#                     'constraint' => sub { "DUMMY" },
#                     'type_default' => sub { "DUMMY" },
#                     'compiled_type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'coercion'}{'_compiled_type_constraint_check'},
#                     'parent' => bless( {
#                       'compiled_type_constraint' => sub { "DUMMY" },
#                       'parent' => bless( {
#                         'compiled_type_constraint' => sub { "DUMMY" },
#                         'parent' => bless( {
#                           'compiled_type_constraint' => sub { "DUMMY" },
#                           'parent' => bless( {
#                             'compiled_type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'},
#                             'type_default' => sub { "DUMMY" },
#                             'coercion' => bless( {
#                               'frozen' => 1,
#                               'name' => '__ANON__',
#                               'type_coercion_map' => [],
#                               'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                               'display_name' => 'to_Any',
#                               '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                             }, 'Type::Coercion' ),
#                             'name' => 'Any',
#                             'library' => 'Types::Standard',
#                             'display_name' => 'Any',
#                             '_is_core' => 1,
#                             'complement_name' => 'None',
#                             '_overload_coderef' => sub { "DUMMY" },
#                             'deprecated' => '',
#                             '_overrides_assert_return' => '',
#                             'constraint' => sub { "DUMMY" },
#                             'inlined' => sub { "DUMMY" },
#                             'definition_context' => {
#                               'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                               'line' => 211,
#                               'package' => 'Types::Standard'
#                             },
#                             'uniq' => 1
#                           }, 'Type::Tiny' ),
#                           'coercion' => bless( {
#                             'frozen' => 1,
#                             'name' => '__ANON__',
#                             'type_coercion_map' => [],
#                             'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                             'display_name' => 'to_Item',
#                             '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                           }, 'Type::Coercion' ),
#                           'name' => 'Item',
#                           'library' => 'Types::Standard',
#                           'display_name' => 'Item',
#                           '_is_core' => 1,
#                           '_overload_coderef' => sub { "DUMMY" },
#                           'deprecated' => '',
#                           '_overrides_assert_return' => '',
#                           'constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'constraint'},
#                           'inlined' => sub { "DUMMY" },
#                           'definition_context' => {
#                             'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                             'line' => 217,
#                             'package' => 'Types::Standard'
#                           },
#                           'uniq' => 2
#                         }, 'Type::Tiny' ),
#                         'coercion' => bless( {
#                           'frozen' => 1,
#                           'name' => '__ANON__',
#                           'type_coercion_map' => [],
#                           'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                           'display_name' => 'to_Defined',
#                           '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                         }, 'Type::Coercion' ),
#                         'name' => 'Defined',
#                         'library' => 'Types::Standard',
#                         'display_name' => 'Defined',
#                         '_is_core' => 1,
#                         '_overload_coderef' => sub { "DUMMY" },
#                         'deprecated' => '',
#                         '_overrides_assert_return' => '',
#                         'complementary_type' => bless( {
#                           'coercion' => bless( {
#                             'frozen' => 1,
#                             'name' => '__ANON__',
#                             'type_coercion_map' => [],
#                             'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'complementary_type'},
#                             'display_name' => 'to_Undef',
#                             '_compiled_type_constraint_check' => sub { "DUMMY" }
#                           }, 'Type::Coercion' ),
#                           'library' => 'Types::Standard',
#                           'complementary_type' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                           'inlined' => sub { "DUMMY" },
#                           'constraint' => sub { "DUMMY" },
#                           'type_default' => sub { "DUMMY" },
#                           'compiled_type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'complementary_type'}{'coercion'}{'_compiled_type_constraint_check'},
#                           'parent' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                           'name' => 'Undef',
#                           '_is_core' => 1,
#                           'display_name' => 'Undef',
#                           '_overload_coderef' => sub { "DUMMY" },
#                           'deprecated' => '',
#                           '_overrides_assert_return' => '',
#                           'definition_context' => {
#                             'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                             'line' => 245,
#                             'package' => 'Types::Standard'
#                           },
#                           'uniq' => 6
#                         }, 'Type::Tiny' ),
#                         'inlined' => sub { "DUMMY" },
#                         'constraint' => sub { "DUMMY" },
#                         'definition_context' => {
#                           'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                           'line' => 253,
#                           'package' => 'Types::Standard'
#                         },
#                         'uniq' => 7
#                       }, 'Type::Tiny' ),
#                       'coercion' => bless( {
#                         'frozen' => 1,
#                         'name' => '__ANON__',
#                         'type_coercion_map' => [],
#                         'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'},
#                         'display_name' => 'to_Value',
#                         '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                       }, 'Type::Coercion' ),
#                       'name' => 'Value',
#                       'library' => 'Types::Standard',
#                       'display_name' => 'Value',
#                       '_is_core' => 1,
#                       '_overload_coderef' => sub { "DUMMY" },
#                       'deprecated' => '',
#                       '_overrides_assert_return' => '',
#                       'inlined' => sub { "DUMMY" },
#                       'constraint' => sub { "DUMMY" },
#                       'definition_context' => {
#                         'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                         'line' => 267,
#                         'package' => 'Types::Standard'
#                       },
#                       'uniq' => 8
#                     }, 'Type::Tiny' ),
#                     'name' => 'Str',
#                     '_is_core' => 1,
#                     'display_name' => 'Str',
#                     '_overload_coderef' => sub { "DUMMY" },
#                     'deprecated' => '',
#                     '_overrides_assert_return' => '',
#                     'definition_context' => {
#                       'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                       'line' => 282,
#                       'package' => 'Types::Standard'
#                     },
#                     'uniq' => 9
#                   }, 'Type::Tiny' ),
#                   'sorter' => sub { "DUMMY" },
#                   'coercion' => bless( {
#                     'frozen' => 1,
#                     'name' => '__ANON__',
#                     'type_coercion_map' => [],
#                     'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'},
#                     'display_name' => 'to_LaxNum',
#                     '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'compiled_type_constraint'}
#                   }, 'Type::Coercion' ),
#                   'name' => 'LaxNum',
#                   'library' => 'Types::Standard',
#                   'display_name' => 'LaxNum',
#                   '_overload_coderef' => sub { "DUMMY" },
#                   'deprecated' => '',
#                   '_overrides_assert_return' => '',
#                   'inlined' => sub { "DUMMY" },
#                   'constraint' => sub { "DUMMY" },
#                   'definition_context' => {
#                     'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                     'line' => 300,
#                     'package' => 'Types::Standard'
#                   },
#                   'uniq' => 10
#                 }, 'Type::Tiny' ),
#                 'coercion' => bless( {
#                   'frozen' => 1,
#                   'name' => '__ANON__',
#                   'type_coercion_map' => [],
#                   'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'},
#                   'display_name' => 'to_Num',
#                   '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'compiled_type_constraint'}
#                 }, 'Type::Coercion' ),
#                 'name' => 'Num',
#                 'library' => 'Types::Standard',
#                 'display_name' => 'Num',
#                 '_overload_coderef' => sub { "DUMMY" },
#                 'deprecated' => '',
#                 '_overrides_assert_return' => '',
#                 'definition_context' => {
#                   'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                   'line' => 335,
#                   'package' => 'Types::Standard'
#                 },
#                 'constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'constraint'},
#                 'uniq' => 12
#               }, 'Type::Tiny' ),
#               'coercion' => bless( {
#                 'frozen' => 1,
#                 'name' => '__ANON__',
#                 'type_coercion_map' => [],
#                 'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'},
#                 'display_name' => 'to_Int',
#                 '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'compiled_type_constraint'}
#               }, 'Type::Coercion' ),
#               'name' => 'Int',
#               'library' => 'Types::Standard',
#               'display_name' => 'Int',
#               '_is_core' => 1,
#               '_overload_coderef' => sub { "DUMMY" },
#               'deprecated' => '',
#               '_overrides_assert_return' => '',
#               'inlined' => sub { "DUMMY" },
#               'constraint' => sub { "DUMMY" },
#               'definition_context' => {
#                 'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                 'line' => 352,
#                 'package' => 'Types::Standard'
#               },
#               'uniq' => 13
#             }, 'Type::Tiny' )
#           }
#         ]
#       },
#       'filename' => 't/40_type_tiny.t',
#       'candidate_name' => 'main::my_multi::second',
#       'linenum' => 18,
#       'args' => $multisub->{'impls'}[0]{'sig'}{'parms'},
#       'code' => sub { "DUMMY" }
#     },
#     {
#       'sig' => {
#         'seen' => '',
#         'parms' => [
#           {
#             'named' => '',
#             'name' => '$foo',
#             'reqd' => 1,
#             'type' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}
#           }
#         ]
#       },
#       'filename' => 't/40_type_tiny.t',
#       'candidate_name' => 'main::my_multi::first',
#       'linenum' => 22,
#       'args' => $multisub->{'impls'}[1]{'sig'}{'parms'},
#       'code' => sub { "DUMMY" }
#     }
#   ],
#   'used_by' => 'main',
#   'subname' => 'my_multi',
#   'possible_params' => {
#     '$foo' => 1
#   },
#   'defined_in' => 'main::my_multi'
# }; (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Dispatcher/TypeParams.pm:82)
# $mpc_defined_in = 'main::my_multi';
#  $mpc_impl = {
#   'sig' => {
#     'seen' => '',
#     'parms' => [
#       {
#         'named' => '',
#         'name' => '$foo',
#         'reqd' => 1,
#         'type' => bless( {
#           'compiled_type_constraint' => sub { "DUMMY" },
#           'type_default' => sub { "DUMMY" },
#           'parent' => bless( {
#             'compiled_type_constraint' => sub { "DUMMY" },
#             'parent' => bless( {
#               'compiled_type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'compiled_type_constraint'},
#               'type_default' => sub { "DUMMY" },
#               'parent' => bless( {
#                 'sorter' => sub { "DUMMY" },
#                 'coercion' => bless( {
#                   'frozen' => 1,
#                   'name' => '__ANON__',
#                   'type_coercion_map' => [],
#                   'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'},
#                   'display_name' => 'to_Str',
#                   '_compiled_type_constraint_check' => sub { "DUMMY" }
#                 }, 'Type::Coercion' ),
#                 'library' => 'Types::Standard',
#                 'inlined' => sub { "DUMMY" },
#                 'constraint' => sub { "DUMMY" },
#                 'type_default' => sub { "DUMMY" },
#                 'compiled_type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'coercion'}{'_compiled_type_constraint_check'},
#                 'parent' => bless( {
#                   'compiled_type_constraint' => sub { "DUMMY" },
#                   'parent' => bless( {
#                     'compiled_type_constraint' => sub { "DUMMY" },
#                     'parent' => bless( {
#                       'compiled_type_constraint' => sub { "DUMMY" },
#                       'parent' => bless( {
#                         'compiled_type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'},
#                         'type_default' => sub { "DUMMY" },
#                         'coercion' => bless( {
#                           'frozen' => 1,
#                           'name' => '__ANON__',
#                           'type_coercion_map' => [],
#                           'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                           'display_name' => 'to_Any',
#                           '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                         }, 'Type::Coercion' ),
#                         'name' => 'Any',
#                         'library' => 'Types::Standard',
#                         'display_name' => 'Any',
#                         '_is_core' => 1,
#                         'complement_name' => 'None',
#                         '_overload_coderef' => sub { "DUMMY" },
#                         'deprecated' => '',
#                         '_overrides_assert_return' => '',
#                         'constraint' => sub { "DUMMY" },
#                         'inlined' => sub { "DUMMY" },
#                         'definition_context' => {
#                           'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                           'line' => 211,
#                           'package' => 'Types::Standard'
#                         },
#                         'uniq' => 1
#                       }, 'Type::Tiny' ),
#                       'coercion' => bless( {
#                         'frozen' => 1,
#                         'name' => '__ANON__',
#                         'type_coercion_map' => [],
#                         'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                         'display_name' => 'to_Item',
#                         '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                       }, 'Type::Coercion' ),
#                       'name' => 'Item',
#                       'library' => 'Types::Standard',
#                       'display_name' => 'Item',
#                       '_is_core' => 1,
#                       '_overload_coderef' => sub { "DUMMY" },
#                       'deprecated' => '',
#                       '_overrides_assert_return' => '',
#                       'constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'constraint'},
#                       'inlined' => sub { "DUMMY" },
#                       'definition_context' => {
#                         'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                         'line' => 217,
#                         'package' => 'Types::Standard'
#                       },
#                       'uniq' => 2
#                     }, 'Type::Tiny' ),
#                     'coercion' => bless( {
#                       'frozen' => 1,
#                       'name' => '__ANON__',
#                       'type_coercion_map' => [],
#                       'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                       'display_name' => 'to_Defined',
#                       '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                     }, 'Type::Coercion' ),
#                     'name' => 'Defined',
#                     'library' => 'Types::Standard',
#                     'display_name' => 'Defined',
#                     '_is_core' => 1,
#                     '_overload_coderef' => sub { "DUMMY" },
#                     'deprecated' => '',
#                     '_overrides_assert_return' => '',
#                     'complementary_type' => bless( {
#                       'coercion' => bless( {
#                         'frozen' => 1,
#                         'name' => '__ANON__',
#                         'type_coercion_map' => [],
#                         'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'complementary_type'},
#                         'display_name' => 'to_Undef',
#                         '_compiled_type_constraint_check' => sub { "DUMMY" }
#                       }, 'Type::Coercion' ),
#                       'library' => 'Types::Standard',
#                       'complementary_type' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                       'inlined' => sub { "DUMMY" },
#                       'constraint' => sub { "DUMMY" },
#                       'type_default' => sub { "DUMMY" },
#                       'compiled_type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'complementary_type'}{'coercion'}{'_compiled_type_constraint_check'},
#                       'parent' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                       'name' => 'Undef',
#                       '_is_core' => 1,
#                       'display_name' => 'Undef',
#                       '_overload_coderef' => sub { "DUMMY" },
#                       'deprecated' => '',
#                       '_overrides_assert_return' => '',
#                       'definition_context' => {
#                         'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                         'line' => 245,
#                         'package' => 'Types::Standard'
#                       },
#                       'uniq' => 6
#                     }, 'Type::Tiny' ),
#                     'inlined' => sub { "DUMMY" },
#                     'constraint' => sub { "DUMMY" },
#                     'definition_context' => {
#                       'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                       'line' => 253,
#                       'package' => 'Types::Standard'
#                     },
#                     'uniq' => 7
#                   }, 'Type::Tiny' ),
#                   'coercion' => bless( {
#                     'frozen' => 1,
#                     'name' => '__ANON__',
#                     'type_coercion_map' => [],
#                     'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'},
#                     'display_name' => 'to_Value',
#                     '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                   }, 'Type::Coercion' ),
#                   'name' => 'Value',
#                   'library' => 'Types::Standard',
#                   'display_name' => 'Value',
#                   '_is_core' => 1,
#                   '_overload_coderef' => sub { "DUMMY" },
#                   'deprecated' => '',
#                   '_overrides_assert_return' => '',
#                   'inlined' => sub { "DUMMY" },
#                   'constraint' => sub { "DUMMY" },
#                   'definition_context' => {
#                     'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                     'line' => 267,
#                     'package' => 'Types::Standard'
#                   },
#                   'uniq' => 8
#                 }, 'Type::Tiny' ),
#                 'name' => 'Str',
#                 '_is_core' => 1,
#                 'display_name' => 'Str',
#                 '_overload_coderef' => sub { "DUMMY" },
#                 'deprecated' => '',
#                 '_overrides_assert_return' => '',
#                 'definition_context' => {
#                   'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                   'line' => 282,
#                   'package' => 'Types::Standard'
#                 },
#                 'uniq' => 9
#               }, 'Type::Tiny' ),
#               'sorter' => sub { "DUMMY" },
#               'coercion' => bless( {
#                 'frozen' => 1,
#                 'name' => '__ANON__',
#                 'type_coercion_map' => [],
#                 'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'},
#                 'display_name' => 'to_LaxNum',
#                 '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'compiled_type_constraint'}
#               }, 'Type::Coercion' ),
#               'name' => 'LaxNum',
#               'library' => 'Types::Standard',
#               'display_name' => 'LaxNum',
#               '_overload_coderef' => sub { "DUMMY" },
#               'deprecated' => '',
#               '_overrides_assert_return' => '',
#               'inlined' => sub { "DUMMY" },
#               'constraint' => sub { "DUMMY" },
#               'definition_context' => {
#                 'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                 'line' => 300,
#                 'package' => 'Types::Standard'
#               },
#               'uniq' => 10
#             }, 'Type::Tiny' ),
#             'coercion' => bless( {
#               'frozen' => 1,
#               'name' => '__ANON__',
#               'type_coercion_map' => [],
#               'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'},
#               'display_name' => 'to_Num',
#               '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'compiled_type_constraint'}
#             }, 'Type::Coercion' ),
#             'name' => 'Num',
#             'library' => 'Types::Standard',
#             'display_name' => 'Num',
#             '_overload_coderef' => sub { "DUMMY" },
#             'deprecated' => '',
#             '_overrides_assert_return' => '',
#             'definition_context' => {
#               'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#               'line' => 335,
#               'package' => 'Types::Standard'
#             },
#             'constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'constraint'},
#             'uniq' => 12
#           }, 'Type::Tiny' ),
#           'coercion' => bless( {
#             'frozen' => 1,
#             'name' => '__ANON__',
#             'type_coercion_map' => [],
#             'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'},
#             'display_name' => 'to_Int',
#             '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'compiled_type_constraint'}
#           }, 'Type::Coercion' ),
#           'name' => 'Int',
#           'library' => 'Types::Standard',
#           'display_name' => 'Int',
#           '_is_core' => 1,
#           '_overload_coderef' => sub { "DUMMY" },
#           'deprecated' => '',
#           '_overrides_assert_return' => '',
#           'inlined' => sub { "DUMMY" },
#           'constraint' => sub { "DUMMY" },
#           'definition_context' => {
#             'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#             'line' => 352,
#             'package' => 'Types::Standard'
#           },
#           'uniq' => 13
#         }, 'Type::Tiny' )
#       }
#     ]
#   },
#   'filename' => 't/40_type_tiny.t',
#   'candidate_name' => 'main::my_multi::second',
#   'linenum' => 18,
#   'args' => $mpc_impl->{'sig'}{'parms'},
#   'code' => sub { "DUMMY" }
# }; (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm:273)
# Copier for main::my_multi::second():
#  #line 276 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
# use strict;
# use warnings;
# sub {
# 
# #line 283 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#     if( $] lt '5.018' || $VERBOSE > 1) {
#         require Data::Dumper;
#         require Test::More;
#         Test::More::diag(sprintf("Positional copier invocation %d:\n%s",
#             ++$Sub::Multi::Tiny::Util::_positional_copier_invocation_number,
#             Data::Dumper->Dump([\@_],['copier_args'])));
#     }
# 
# #line 293 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#     (
# 
# #line 303 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#         $main::my_multi::foo
# #line 306 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#     ) = @_;
# 
#     if( $] lt '5.018' || $VERBOSE > 1) {
#         Test::More::diag(sprintf("After positional copier invocation %d:",
#             $Sub::Multi::Tiny::Util::_positional_copier_invocation_number));
#         Test::More::diag(join "\n", map {
#             sprintf("%s = %s", $_, eval($_))
#         } @vars);
#     }
# 
# } #copier
 (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm:319)
# $mpc_defined_in = 'main::my_multi';
#  $mpc_impl = {
#   'sig' => {
#     'seen' => '',
#     'parms' => [
#       {
#         'named' => '',
#         'name' => '$foo',
#         'reqd' => 1,
#         'type' => bless( {
#           'sorter' => sub { "DUMMY" },
#           'coercion' => bless( {
#             'frozen' => 1,
#             'name' => '__ANON__',
#             'type_coercion_map' => [],
#             'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'},
#             'display_name' => 'to_Str',
#             '_compiled_type_constraint_check' => sub { "DUMMY" }
#           }, 'Type::Coercion' ),
#           'library' => 'Types::Standard',
#           'inlined' => sub { "DUMMY" },
#           'constraint' => sub { "DUMMY" },
#           'type_default' => sub { "DUMMY" },
#           'compiled_type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'coercion'}{'_compiled_type_constraint_check'},
#           'parent' => bless( {
#             'compiled_type_constraint' => sub { "DUMMY" },
#             'parent' => bless( {
#               'compiled_type_constraint' => sub { "DUMMY" },
#               'parent' => bless( {
#                 'compiled_type_constraint' => sub { "DUMMY" },
#                 'parent' => bless( {
#                   'compiled_type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'},
#                   'type_default' => sub { "DUMMY" },
#                   'coercion' => bless( {
#                     'frozen' => 1,
#                     'name' => '__ANON__',
#                     'type_coercion_map' => [],
#                     'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'},
#                     'display_name' => 'to_Any',
#                     '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                   }, 'Type::Coercion' ),
#                   'name' => 'Any',
#                   'library' => 'Types::Standard',
#                   'display_name' => 'Any',
#                   '_is_core' => 1,
#                   'complement_name' => 'None',
#                   '_overload_coderef' => sub { "DUMMY" },
#                   'deprecated' => '',
#                   '_overrides_assert_return' => '',
#                   'constraint' => sub { "DUMMY" },
#                   'inlined' => sub { "DUMMY" },
#                   'definition_context' => {
#                     'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                     'line' => 211,
#                     'package' => 'Types::Standard'
#                   },
#                   'uniq' => 1
#                 }, 'Type::Tiny' ),
#                 'coercion' => bless( {
#                   'frozen' => 1,
#                   'name' => '__ANON__',
#                   'type_coercion_map' => [],
#                   'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'},
#                   'display_name' => 'to_Item',
#                   '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                 }, 'Type::Coercion' ),
#                 'name' => 'Item',
#                 'library' => 'Types::Standard',
#                 'display_name' => 'Item',
#                 '_is_core' => 1,
#                 '_overload_coderef' => sub { "DUMMY" },
#                 'deprecated' => '',
#                 '_overrides_assert_return' => '',
#                 'constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'constraint'},
#                 'inlined' => sub { "DUMMY" },
#                 'definition_context' => {
#                   'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                   'line' => 217,
#                   'package' => 'Types::Standard'
#                 },
#                 'uniq' => 2
#               }, 'Type::Tiny' ),
#               'coercion' => bless( {
#                 'frozen' => 1,
#                 'name' => '__ANON__',
#                 'type_coercion_map' => [],
#                 'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'},
#                 'display_name' => 'to_Defined',
#                 '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'compiled_type_constraint'}
#               }, 'Type::Coercion' ),
#               'name' => 'Defined',
#               'library' => 'Types::Standard',
#               'display_name' => 'Defined',
#               '_is_core' => 1,
#               '_overload_coderef' => sub { "DUMMY" },
#               'deprecated' => '',
#               '_overrides_assert_return' => '',
#               'complementary_type' => bless( {
#                 'coercion' => bless( {
#                   'frozen' => 1,
#                   'name' => '__ANON__',
#                   'type_coercion_map' => [],
#                   'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'complementary_type'},
#                   'display_name' => 'to_Undef',
#                   '_compiled_type_constraint_check' => sub { "DUMMY" }
#                 }, 'Type::Coercion' ),
#                 'library' => 'Types::Standard',
#                 'complementary_type' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'},
#                 'inlined' => sub { "DUMMY" },
#                 'constraint' => sub { "DUMMY" },
#                 'type_default' => sub { "DUMMY" },
#                 'compiled_type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'complementary_type'}{'coercion'}{'_compiled_type_constraint_check'},
#                 'parent' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'},
#                 'name' => 'Undef',
#                 '_is_core' => 1,
#                 'display_name' => 'Undef',
#                 '_overload_coderef' => sub { "DUMMY" },
#                 'deprecated' => '',
#                 '_overrides_assert_return' => '',
#                 'definition_context' => {
#                   'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                   'line' => 245,
#                   'package' => 'Types::Standard'
#                 },
#                 'uniq' => 6
#               }, 'Type::Tiny' ),
#               'inlined' => sub { "DUMMY" },
#               'constraint' => sub { "DUMMY" },
#               'definition_context' => {
#                 'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                 'line' => 253,
#                 'package' => 'Types::Standard'
#               },
#               'uniq' => 7
#             }, 'Type::Tiny' ),
#             'coercion' => bless( {
#               'frozen' => 1,
#               'name' => '__ANON__',
#               'type_coercion_map' => [],
#               'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'},
#               'display_name' => 'to_Value',
#               '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'compiled_type_constraint'}
#             }, 'Type::Coercion' ),
#             'name' => 'Value',
#             'library' => 'Types::Standard',
#             'display_name' => 'Value',
#             '_is_core' => 1,
#             '_overload_coderef' => sub { "DUMMY" },
#             'deprecated' => '',
#             '_overrides_assert_return' => '',
#             'inlined' => sub { "DUMMY" },
#             'constraint' => sub { "DUMMY" },
#             'definition_context' => {
#               'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#               'line' => 267,
#               'package' => 'Types::Standard'
#             },
#             'uniq' => 8
#           }, 'Type::Tiny' ),
#           'name' => 'Str',
#           '_is_core' => 1,
#           'display_name' => 'Str',
#           '_overload_coderef' => sub { "DUMMY" },
#           'deprecated' => '',
#           '_overrides_assert_return' => '',
#           'definition_context' => {
#             'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#             'line' => 282,
#             'package' => 'Types::Standard'
#           },
#           'uniq' => 9
#         }, 'Type::Tiny' )
#       }
#     ]
#   },
#   'filename' => 't/40_type_tiny.t',
#   'candidate_name' => 'main::my_multi::first',
#   'linenum' => 22,
#   'args' => $mpc_impl->{'sig'}{'parms'},
#   'code' => sub { "DUMMY" }
# }; (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm:273)
# Copier for main::my_multi::first():
#  #line 276 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
# use strict;
# use warnings;
# sub {
# 
# #line 283 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#     if( $] lt '5.018' || $VERBOSE > 1) {
#         require Data::Dumper;
#         require Test::More;
#         Test::More::diag(sprintf("Positional copier invocation %d:\n%s",
#             ++$Sub::Multi::Tiny::Util::_positional_copier_invocation_number,
#             Data::Dumper->Dump([\@_],['copier_args'])));
#     }
# 
# #line 293 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#     (
# 
# #line 303 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#         $main::my_multi::foo
# #line 306 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#     ) = @_;
# 
#     if( $] lt '5.018' || $VERBOSE > 1) {
#         Test::More::diag(sprintf("After positional copier invocation %d:",
#             $Sub::Multi::Tiny::Util::_positional_copier_invocation_number));
#         Test::More::diag(join "\n", map {
#             sprintf("%s = %s", $_, eval($_))
#         } @vars);
#     }
# 
# } #copier
 (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm:319)
# _complete_dispatcher making Sub::Multi::Tiny::Dispatcher::TypeParams dispatcher with args: $multisub = {
#   'impls' => [
#     {
#       'sig' => {
#         'seen' => '',
#         'parms' => [
#           {
#             'named' => '',
#             'name' => '$foo',
#             'reqd' => 1,
#             'type' => bless( {
#               'compiled_type_constraint' => sub { "DUMMY" },
#               'type_default' => sub { "DUMMY" },
#               'parent' => bless( {
#                 'compiled_type_constraint' => sub { "DUMMY" },
#                 'parent' => bless( {
#                   'compiled_type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'compiled_type_constraint'},
#                   'type_default' => sub { "DUMMY" },
#                   'parent' => bless( {
#                     'sorter' => sub { "DUMMY" },
#                     'coercion' => bless( {
#                       'frozen' => 1,
#                       'name' => '__ANON__',
#                       'type_coercion_map' => [],
#                       'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'},
#                       'display_name' => 'to_Str',
#                       '_compiled_type_constraint_check' => sub { "DUMMY" }
#                     }, 'Type::Coercion' ),
#                     'library' => 'Types::Standard',
#                     'inlined' => sub { "DUMMY" },
#                     'constraint' => sub { "DUMMY" },
#                     'type_default' => sub { "DUMMY" },
#                     'compiled_type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'coercion'}{'_compiled_type_constraint_check'},
#                     'parent' => bless( {
#                       'compiled_type_constraint' => sub { "DUMMY" },
#                       'parent' => bless( {
#                         'compiled_type_constraint' => sub { "DUMMY" },
#                         'parent' => bless( {
#                           'compiled_type_constraint' => sub { "DUMMY" },
#                           'parent' => bless( {
#                             'compiled_type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'},
#                             'type_default' => sub { "DUMMY" },
#                             'coercion' => bless( {
#                               'frozen' => 1,
#                               'name' => '__ANON__',
#                               'type_coercion_map' => [],
#                               'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                               'display_name' => 'to_Any',
#                               '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                             }, 'Type::Coercion' ),
#                             'name' => 'Any',
#                             'library' => 'Types::Standard',
#                             'display_name' => 'Any',
#                             '_is_core' => 1,
#                             'complement_name' => 'None',
#                             '_overload_coderef' => sub { "DUMMY" },
#                             'deprecated' => '',
#                             '_overrides_assert_return' => '',
#                             'constraint' => sub { "DUMMY" },
#                             'inlined' => sub { "DUMMY" },
#                             'definition_context' => {
#                               'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                               'line' => 211,
#                               'package' => 'Types::Standard'
#                             },
#                             'uniq' => 1
#                           }, 'Type::Tiny' ),
#                           'coercion' => bless( {
#                             'frozen' => 1,
#                             'name' => '__ANON__',
#                             'type_coercion_map' => [],
#                             'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                             'display_name' => 'to_Item',
#                             '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                           }, 'Type::Coercion' ),
#                           'name' => 'Item',
#                           'library' => 'Types::Standard',
#                           'display_name' => 'Item',
#                           '_is_core' => 1,
#                           '_overload_coderef' => sub { "DUMMY" },
#                           'deprecated' => '',
#                           '_overrides_assert_return' => '',
#                           'constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'constraint'},
#                           'inlined' => sub { "DUMMY" },
#                           'definition_context' => {
#                             'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                             'line' => 217,
#                             'package' => 'Types::Standard'
#                           },
#                           'uniq' => 2
#                         }, 'Type::Tiny' ),
#                         'coercion' => bless( {
#                           'frozen' => 1,
#                           'name' => '__ANON__',
#                           'type_coercion_map' => [],
#                           'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                           'display_name' => 'to_Defined',
#                           '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                         }, 'Type::Coercion' ),
#                         'name' => 'Defined',
#                         'library' => 'Types::Standard',
#                         'display_name' => 'Defined',
#                         '_is_core' => 1,
#                         '_overload_coderef' => sub { "DUMMY" },
#                         'deprecated' => '',
#                         '_overrides_assert_return' => '',
#                         'complementary_type' => bless( {
#                           'coercion' => bless( {
#                             'frozen' => 1,
#                             'name' => '__ANON__',
#                             'type_coercion_map' => [],
#                             'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'complementary_type'},
#                             'display_name' => 'to_Undef',
#                             '_compiled_type_constraint_check' => sub { "DUMMY" }
#                           }, 'Type::Coercion' ),
#                           'library' => 'Types::Standard',
#                           'complementary_type' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                           'inlined' => sub { "DUMMY" },
#                           'constraint' => sub { "DUMMY" },
#                           'type_default' => sub { "DUMMY" },
#                           'compiled_type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'complementary_type'}{'coercion'}{'_compiled_type_constraint_check'},
#                           'parent' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                           'name' => 'Undef',
#                           '_is_core' => 1,
#                           'display_name' => 'Undef',
#                           '_overload_coderef' => sub { "DUMMY" },
#                           'deprecated' => '',
#                           '_overrides_assert_return' => '',
#                           'definition_context' => {
#                             'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                             'line' => 245,
#                             'package' => 'Types::Standard'
#                           },
#                           'uniq' => 6
#                         }, 'Type::Tiny' ),
#                         'inlined' => sub { "DUMMY" },
#                         'constraint' => sub { "DUMMY" },
#                         'definition_context' => {
#                           'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                           'line' => 253,
#                           'package' => 'Types::Standard'
#                         },
#                         'uniq' => 7
#                       }, 'Type::Tiny' ),
#                       'coercion' => bless( {
#                         'frozen' => 1,
#                         'name' => '__ANON__',
#                         'type_coercion_map' => [],
#                         'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'},
#                         'display_name' => 'to_Value',
#                         '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                       }, 'Type::Coercion' ),
#                       'name' => 'Value',
#                       'library' => 'Types::Standard',
#                       'display_name' => 'Value',
#                       '_is_core' => 1,
#                       '_overload_coderef' => sub { "DUMMY" },
#                       'deprecated' => '',
#                       '_overrides_assert_return' => '',
#                       'inlined' => sub { "DUMMY" },
#                       'constraint' => sub { "DUMMY" },
#                       'definition_context' => {
#                         'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                         'line' => 267,
#                         'package' => 'Types::Standard'
#                       },
#                       'uniq' => 8
#                     }, 'Type::Tiny' ),
#                     'name' => 'Str',
#                     '_is_core' => 1,
#                     'display_name' => 'Str',
#                     '_overload_coderef' => sub { "DUMMY" },
#                     'deprecated' => '',
#                     '_overrides_assert_return' => '',
#                     'definition_context' => {
#                       'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                       'line' => 282,
#                       'package' => 'Types::Standard'
#                     },
#                     'uniq' => 9
#                   }, 'Type::Tiny' ),
#                   'sorter' => sub { "DUMMY" },
#                   'coercion' => bless( {
#                     'frozen' => 1,
#                     'name' => '__ANON__',
#                     'type_coercion_map' => [],
#                     'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'},
#                     'display_name' => 'to_LaxNum',
#                     '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'compiled_type_constraint'}
#                   }, 'Type::Coercion' ),
#                   'name' => 'LaxNum',
#                   'library' => 'Types::Standard',
#                   'display_name' => 'LaxNum',
#                   '_overload_coderef' => sub { "DUMMY" },
#                   'deprecated' => '',
#                   '_overrides_assert_return' => '',
#                   'inlined' => sub { "DUMMY" },
#                   'constraint' => sub { "DUMMY" },
#                   'definition_context' => {
#                     'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                     'line' => 300,
#                     'package' => 'Types::Standard'
#                   },
#                   'uniq' => 10
#                 }, 'Type::Tiny' ),
#                 'coercion' => bless( {
#                   'frozen' => 1,
#                   'name' => '__ANON__',
#                   'type_coercion_map' => [],
#                   'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'},
#                   'display_name' => 'to_Num',
#                   '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'compiled_type_constraint'}
#                 }, 'Type::Coercion' ),
#                 'name' => 'Num',
#                 'library' => 'Types::Standard',
#                 'display_name' => 'Num',
#                 '_overload_coderef' => sub { "DUMMY" },
#                 'deprecated' => '',
#                 '_overrides_assert_return' => '',
#                 'definition_context' => {
#                   'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                   'line' => 335,
#                   'package' => 'Types::Standard'
#                 },
#                 'constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'constraint'},
#                 'uniq' => 12
#               }, 'Type::Tiny' ),
#               'coercion' => bless( {
#                 'frozen' => 1,
#                 'name' => '__ANON__',
#                 'type_coercion_map' => [],
#                 'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'},
#                 'display_name' => 'to_Int',
#                 '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'compiled_type_constraint'}
#               }, 'Type::Coercion' ),
#               'name' => 'Int',
#               'library' => 'Types::Standard',
#               'display_name' => 'Int',
#               '_is_core' => 1,
#               '_overload_coderef' => sub { "DUMMY" },
#               'deprecated' => '',
#               '_overrides_assert_return' => '',
#               'inlined' => sub { "DUMMY" },
#               'constraint' => sub { "DUMMY" },
#               'definition_context' => {
#                 'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                 'line' => 352,
#                 'package' => 'Types::Standard'
#               },
#               'uniq' => 13
#             }, 'Type::Tiny' )
#           }
#         ]
#       },
#       'filename' => 't/40_type_tiny.t',
#       'candidate_name' => 'main::my_multi::second',
#       'linenum' => 18,
#       'args' => $multisub->{'impls'}[0]{'sig'}{'parms'},
#       'code' => sub { "DUMMY" }
#     },
#     {
#       'sig' => {
#         'seen' => '',
#         'parms' => [
#           {
#             'named' => '',
#             'name' => '$foo',
#             'reqd' => 1,
#             'type' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}
#           }
#         ]
#       },
#       'filename' => 't/40_type_tiny.t',
#       'candidate_name' => 'main::my_multi::first',
#       'linenum' => 22,
#       'args' => $multisub->{'impls'}[1]{'sig'}{'parms'},
#       'code' => sub { "DUMMY" }
#     }
#   ],
#   'used_by' => 'main',
#   'subname' => 'my_multi',
#   'possible_params' => {
#     '$foo' => 1
#   },
#   'defined_in' => 'main::my_multi'
# };
#  $inner_code = '#line 130 "C:\\strawberry\\cpan\\build\\Sub-Multi-Tiny-0.000013-0\\blib\\lib/Sub/Multi/Tiny/Dispatcher/TypeParams.pm"
#             # Find the candidate
#             @_ = $data[0]->(@_);      # $checker.  Dies on error.
#                 # NOTE: this change can\'t be `local`ized because `goto`
#                 # undoes the `local` - see #8
#             $candidate = $data[1]->[${^_TYPE_PARAMS_MULTISIG}];   # impls
#             $copier = $data[2]->[${^_TYPE_PARAMS_MULTISIG}];      # copiers
# 
# ';
#  $data = sub { "DUMMY" };
#  $VAR4 = [
#   $multisub->{'impls'}[0]{'code'},
#   $multisub->{'impls'}[1]{'code'}
# ];
#  $VAR5 = [
#   sub { "DUMMY" },
#   sub { "DUMMY" }
# ]; (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm:200)
# Sub::Multi::Tiny::Dispatcher::TypeParams dispatcher for main::my_multi():
# #line 204 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#         use strict;
#         use warnings;
#         sub {
#             # Find the candidate
#             my ($candidate, $copier);
# 
# #line 130 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Dispatcher/TypeParams.pm"
#             # Find the candidate
#             @_ = $data[0]->(@_);      # $checker.  Dies on error.
#                 # NOTE: this change can't be `local`ized because `goto`
#                 # undoes the `local` - see #8
#             $candidate = $data[1]->[${^_TYPE_PARAMS_MULTISIG}];   # impls
#             $copier = $data[2]->[${^_TYPE_PARAMS_MULTISIG}];      # copiers
# 
# 
# 
#             # Save the present values of the parameters
# 
# #line 219 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
# my $saved_foo = $main::my_multi::foo;
# 
# #line 225 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#             # Create the guard
#             my $guard = Guard::guard {
# 
# #line 221 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
# $main::my_multi::foo = $saved_foo;
# 
# 
# 
#             }; #End of guard
# 
# #line 234 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
# 
#             # Copy the parameters into the variables the candidate
#             # will access them from
#             &$copier;   # $copier gets @_ automatically
# 
#             # Pass the guard so the parameters will be reset once \$candidate
#             # finishes running.
#             @_ = ($guard);
# 
#             # Invoke the selected candidate
#             goto &$candidate;
#         } #dispatcher
# 
 (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm:248)
# Making Type::Params dispatcher for:  $multisub = {
#   'impls' => [
#     {
#       'sig' => {
#         'seen' => '',
#         'parms' => [
#           {
#             'named' => '',
#             'name' => '$foo',
#             'reqd' => 1,
#             'type' => bless( {
#               'compiled_type_constraint' => sub { "DUMMY" },
#               'type_default' => sub { "DUMMY" },
#               'parent' => bless( {
#                 'compiled_type_constraint' => sub { "DUMMY" },
#                 'parent' => bless( {
#                   'compiled_type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'compiled_type_constraint'},
#                   'type_default' => sub { "DUMMY" },
#                   'parent' => bless( {
#                     'sorter' => sub { "DUMMY" },
#                     'coercion' => bless( {
#                       'frozen' => 1,
#                       'name' => '__ANON__',
#                       'type_coercion_map' => [],
#                       'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'},
#                       'display_name' => 'to_Str',
#                       '_compiled_type_constraint_check' => sub { "DUMMY" }
#                     }, 'Type::Coercion' ),
#                     'library' => 'Types::Standard',
#                     'inlined' => sub { "DUMMY" },
#                     'constraint' => sub { "DUMMY" },
#                     'type_default' => sub { "DUMMY" },
#                     'compiled_type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'coercion'}{'_compiled_type_constraint_check'},
#                     'parent' => bless( {
#                       'compiled_type_constraint' => sub { "DUMMY" },
#                       'parent' => bless( {
#                         'compiled_type_constraint' => sub { "DUMMY" },
#                         'parent' => bless( {
#                           'compiled_type_constraint' => sub { "DUMMY" },
#                           'parent' => bless( {
#                             'compiled_type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'},
#                             'type_default' => sub { "DUMMY" },
#                             'coercion' => bless( {
#                               'frozen' => 1,
#                               'name' => '__ANON__',
#                               'type_coercion_map' => [],
#                               'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                               'display_name' => 'to_Any',
#                               '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                             }, 'Type::Coercion' ),
#                             'name' => 'Any',
#                             'library' => 'Types::Standard',
#                             'display_name' => 'Any',
#                             '_is_core' => 1,
#                             'complement_name' => 'None',
#                             '_overload_coderef' => sub { "DUMMY" },
#                             'deprecated' => '',
#                             '_overrides_assert_return' => '',
#                             'constraint' => sub { "DUMMY" },
#                             'inlined' => sub { "DUMMY" },
#                             'definition_context' => {
#                               'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                               'line' => 211,
#                               'package' => 'Types::Standard'
#                             },
#                             'uniq' => 1
#                           }, 'Type::Tiny' ),
#                           'coercion' => bless( {
#                             'frozen' => 1,
#                             'name' => '__ANON__',
#                             'type_coercion_map' => [],
#                             'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                             'display_name' => 'to_Item',
#                             '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                           }, 'Type::Coercion' ),
#                           'name' => 'Item',
#                           'library' => 'Types::Standard',
#                           'display_name' => 'Item',
#                           '_is_core' => 1,
#                           '_overload_coderef' => sub { "DUMMY" },
#                           'deprecated' => '',
#                           '_overrides_assert_return' => '',
#                           'constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'constraint'},
#                           'inlined' => sub { "DUMMY" },
#                           'definition_context' => {
#                             'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                             'line' => 217,
#                             'package' => 'Types::Standard'
#                           },
#                           'uniq' => 2
#                         }, 'Type::Tiny' ),
#                         'coercion' => bless( {
#                           'frozen' => 1,
#                           'name' => '__ANON__',
#                           'type_coercion_map' => [],
#                           'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                           'display_name' => 'to_Defined',
#                           '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                         }, 'Type::Coercion' ),
#                         'name' => 'Defined',
#                         'library' => 'Types::Standard',
#                         'display_name' => 'Defined',
#                         '_is_core' => 1,
#                         '_overload_coderef' => sub { "DUMMY" },
#                         'deprecated' => '',
#                         '_overrides_assert_return' => '',
#                         'complementary_type' => bless( {
#                           'coercion' => bless( {
#                             'frozen' => 1,
#                             'name' => '__ANON__',
#                             'type_coercion_map' => [],
#                             'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'complementary_type'},
#                             'display_name' => 'to_Undef',
#                             '_compiled_type_constraint_check' => sub { "DUMMY" }
#                           }, 'Type::Coercion' ),
#                           'library' => 'Types::Standard',
#                           'complementary_type' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                           'inlined' => sub { "DUMMY" },
#                           'constraint' => sub { "DUMMY" },
#                           'type_default' => sub { "DUMMY" },
#                           'compiled_type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'complementary_type'}{'coercion'}{'_compiled_type_constraint_check'},
#                           'parent' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                           'name' => 'Undef',
#                           '_is_core' => 1,
#                           'display_name' => 'Undef',
#                           '_overload_coderef' => sub { "DUMMY" },
#                           'deprecated' => '',
#                           '_overrides_assert_return' => '',
#                           'definition_context' => {
#                             'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                             'line' => 245,
#                             'package' => 'Types::Standard'
#                           },
#                           'uniq' => 6
#                         }, 'Type::Tiny' ),
#                         'inlined' => sub { "DUMMY" },
#                         'constraint' => sub { "DUMMY" },
#                         'definition_context' => {
#                           'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                           'line' => 253,
#                           'package' => 'Types::Standard'
#                         },
#                         'uniq' => 7
#                       }, 'Type::Tiny' ),
#                       'coercion' => bless( {
#                         'frozen' => 1,
#                         'name' => '__ANON__',
#                         'type_coercion_map' => [],
#                         'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'},
#                         'display_name' => 'to_Value',
#                         '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                       }, 'Type::Coercion' ),
#                       'name' => 'Value',
#                       'library' => 'Types::Standard',
#                       'display_name' => 'Value',
#                       '_is_core' => 1,
#                       '_overload_coderef' => sub { "DUMMY" },
#                       'deprecated' => '',
#                       '_overrides_assert_return' => '',
#                       'inlined' => sub { "DUMMY" },
#                       'constraint' => sub { "DUMMY" },
#                       'definition_context' => {
#                         'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                         'line' => 267,
#                         'package' => 'Types::Standard'
#                       },
#                       'uniq' => 8
#                     }, 'Type::Tiny' ),
#                     'name' => 'Str',
#                     '_is_core' => 1,
#                     'display_name' => 'Str',
#                     '_overload_coderef' => sub { "DUMMY" },
#                     'deprecated' => '',
#                     '_overrides_assert_return' => '',
#                     'definition_context' => {
#                       'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                       'line' => 282,
#                       'package' => 'Types::Standard'
#                     },
#                     'uniq' => 9
#                   }, 'Type::Tiny' ),
#                   'sorter' => sub { "DUMMY" },
#                   'coercion' => bless( {
#                     'frozen' => 1,
#                     'name' => '__ANON__',
#                     'type_coercion_map' => [],
#                     'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'},
#                     'display_name' => 'to_LaxNum',
#                     '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'compiled_type_constraint'}
#                   }, 'Type::Coercion' ),
#                   'name' => 'LaxNum',
#                   'library' => 'Types::Standard',
#                   'display_name' => 'LaxNum',
#                   '_overload_coderef' => sub { "DUMMY" },
#                   'deprecated' => '',
#                   '_overrides_assert_return' => '',
#                   'inlined' => sub { "DUMMY" },
#                   'constraint' => sub { "DUMMY" },
#                   'definition_context' => {
#                     'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                     'line' => 300,
#                     'package' => 'Types::Standard'
#                   },
#                   'uniq' => 10
#                 }, 'Type::Tiny' ),
#                 'coercion' => bless( {
#                   'frozen' => 1,
#                   'name' => '__ANON__',
#                   'type_coercion_map' => [],
#                   'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'},
#                   'display_name' => 'to_Num',
#                   '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'compiled_type_constraint'}
#                 }, 'Type::Coercion' ),
#                 'name' => 'Num',
#                 'library' => 'Types::Standard',
#                 'display_name' => 'Num',
#                 '_overload_coderef' => sub { "DUMMY" },
#                 'deprecated' => '',
#                 '_overrides_assert_return' => '',
#                 'definition_context' => {
#                   'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                   'line' => 335,
#                   'package' => 'Types::Standard'
#                 },
#                 'constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'constraint'},
#                 'uniq' => 12
#               }, 'Type::Tiny' ),
#               'coercion' => bless( {
#                 'frozen' => 1,
#                 'name' => '__ANON__',
#                 'type_coercion_map' => [],
#                 'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'},
#                 'display_name' => 'to_Int',
#                 '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'compiled_type_constraint'}
#               }, 'Type::Coercion' ),
#               'name' => 'Int',
#               'library' => 'Types::Standard',
#               'display_name' => 'Int',
#               '_is_core' => 1,
#               '_overload_coderef' => sub { "DUMMY" },
#               'deprecated' => '',
#               '_overrides_assert_return' => '',
#               'inlined' => sub { "DUMMY" },
#               'constraint' => sub { "DUMMY" },
#               'definition_context' => {
#                 'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                 'line' => 352,
#                 'package' => 'Types::Standard'
#               },
#               'uniq' => 13
#             }, 'Type::Tiny' )
#           }
#         ]
#       },
#       'filename' => 't/40_type_tiny.t',
#       'candidate_name' => 'main::check_arity::second',
#       'linenum' => 94,
#       'args' => $multisub->{'impls'}[0]{'sig'}{'parms'},
#       'code' => sub { "DUMMY" }
#     },
#     {
#       'sig' => {
#         'seen' => '',
#         'parms' => [
#           {
#             'named' => '',
#             'name' => '$foo',
#             'reqd' => 1,
#             'type' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}
#           }
#         ]
#       },
#       'filename' => 't/40_type_tiny.t',
#       'candidate_name' => 'main::check_arity::first',
#       'linenum' => 98,
#       'args' => $multisub->{'impls'}[1]{'sig'}{'parms'},
#       'code' => sub { "DUMMY" }
#     }
#   ],
#   'used_by' => 'main',
#   'subname' => 'check_arity',
#   'possible_params' => {
#     '$foo' => 1,
#     '$bar' => 1
#   },
#   'defined_in' => 'main::check_arity'
# }; (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Dispatcher/TypeParams.pm:82)
# $mpc_defined_in = 'main::check_arity';
#  $mpc_impl = {
#   'sig' => {
#     'seen' => '',
#     'parms' => [
#       {
#         'named' => '',
#         'name' => '$foo',
#         'reqd' => 1,
#         'type' => bless( {
#           'compiled_type_constraint' => sub { "DUMMY" },
#           'type_default' => sub { "DUMMY" },
#           'parent' => bless( {
#             'compiled_type_constraint' => sub { "DUMMY" },
#             'parent' => bless( {
#               'compiled_type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'compiled_type_constraint'},
#               'type_default' => sub { "DUMMY" },
#               'parent' => bless( {
#                 'sorter' => sub { "DUMMY" },
#                 'coercion' => bless( {
#                   'frozen' => 1,
#                   'name' => '__ANON__',
#                   'type_coercion_map' => [],
#                   'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'},
#                   'display_name' => 'to_Str',
#                   '_compiled_type_constraint_check' => sub { "DUMMY" }
#                 }, 'Type::Coercion' ),
#                 'library' => 'Types::Standard',
#                 'inlined' => sub { "DUMMY" },
#                 'constraint' => sub { "DUMMY" },
#                 'type_default' => sub { "DUMMY" },
#                 'compiled_type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'coercion'}{'_compiled_type_constraint_check'},
#                 'parent' => bless( {
#                   'compiled_type_constraint' => sub { "DUMMY" },
#                   'parent' => bless( {
#                     'compiled_type_constraint' => sub { "DUMMY" },
#                     'parent' => bless( {
#                       'compiled_type_constraint' => sub { "DUMMY" },
#                       'parent' => bless( {
#                         'compiled_type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'},
#                         'type_default' => sub { "DUMMY" },
#                         'coercion' => bless( {
#                           'frozen' => 1,
#                           'name' => '__ANON__',
#                           'type_coercion_map' => [],
#                           'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                           'display_name' => 'to_Any',
#                           '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                         }, 'Type::Coercion' ),
#                         'name' => 'Any',
#                         'library' => 'Types::Standard',
#                         'display_name' => 'Any',
#                         '_is_core' => 1,
#                         'complement_name' => 'None',
#                         '_overload_coderef' => sub { "DUMMY" },
#                         'deprecated' => '',
#                         '_overrides_assert_return' => '',
#                         'constraint' => sub { "DUMMY" },
#                         'inlined' => sub { "DUMMY" },
#                         'definition_context' => {
#                           'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                           'line' => 211,
#                           'package' => 'Types::Standard'
#                         },
#                         'uniq' => 1
#                       }, 'Type::Tiny' ),
#                       'coercion' => bless( {
#                         'frozen' => 1,
#                         'name' => '__ANON__',
#                         'type_coercion_map' => [],
#                         'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                         'display_name' => 'to_Item',
#                         '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                       }, 'Type::Coercion' ),
#                       'name' => 'Item',
#                       'library' => 'Types::Standard',
#                       'display_name' => 'Item',
#                       '_is_core' => 1,
#                       '_overload_coderef' => sub { "DUMMY" },
#                       'deprecated' => '',
#                       '_overrides_assert_return' => '',
#                       'constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'constraint'},
#                       'inlined' => sub { "DUMMY" },
#                       'definition_context' => {
#                         'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                         'line' => 217,
#                         'package' => 'Types::Standard'
#                       },
#                       'uniq' => 2
#                     }, 'Type::Tiny' ),
#                     'coercion' => bless( {
#                       'frozen' => 1,
#                       'name' => '__ANON__',
#                       'type_coercion_map' => [],
#                       'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                       'display_name' => 'to_Defined',
#                       '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                     }, 'Type::Coercion' ),
#                     'name' => 'Defined',
#                     'library' => 'Types::Standard',
#                     'display_name' => 'Defined',
#                     '_is_core' => 1,
#                     '_overload_coderef' => sub { "DUMMY" },
#                     'deprecated' => '',
#                     '_overrides_assert_return' => '',
#                     'complementary_type' => bless( {
#                       'coercion' => bless( {
#                         'frozen' => 1,
#                         'name' => '__ANON__',
#                         'type_coercion_map' => [],
#                         'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'complementary_type'},
#                         'display_name' => 'to_Undef',
#                         '_compiled_type_constraint_check' => sub { "DUMMY" }
#                       }, 'Type::Coercion' ),
#                       'library' => 'Types::Standard',
#                       'complementary_type' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                       'inlined' => sub { "DUMMY" },
#                       'constraint' => sub { "DUMMY" },
#                       'type_default' => sub { "DUMMY" },
#                       'compiled_type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'complementary_type'}{'coercion'}{'_compiled_type_constraint_check'},
#                       'parent' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                       'name' => 'Undef',
#                       '_is_core' => 1,
#                       'display_name' => 'Undef',
#                       '_overload_coderef' => sub { "DUMMY" },
#                       'deprecated' => '',
#                       '_overrides_assert_return' => '',
#                       'definition_context' => {
#                         'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                         'line' => 245,
#                         'package' => 'Types::Standard'
#                       },
#                       'uniq' => 6
#                     }, 'Type::Tiny' ),
#                     'inlined' => sub { "DUMMY" },
#                     'constraint' => sub { "DUMMY" },
#                     'definition_context' => {
#                       'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                       'line' => 253,
#                       'package' => 'Types::Standard'
#                     },
#                     'uniq' => 7
#                   }, 'Type::Tiny' ),
#                   'coercion' => bless( {
#                     'frozen' => 1,
#                     'name' => '__ANON__',
#                     'type_coercion_map' => [],
#                     'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'},
#                     'display_name' => 'to_Value',
#                     '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                   }, 'Type::Coercion' ),
#                   'name' => 'Value',
#                   'library' => 'Types::Standard',
#                   'display_name' => 'Value',
#                   '_is_core' => 1,
#                   '_overload_coderef' => sub { "DUMMY" },
#                   'deprecated' => '',
#                   '_overrides_assert_return' => '',
#                   'inlined' => sub { "DUMMY" },
#                   'constraint' => sub { "DUMMY" },
#                   'definition_context' => {
#                     'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                     'line' => 267,
#                     'package' => 'Types::Standard'
#                   },
#                   'uniq' => 8
#                 }, 'Type::Tiny' ),
#                 'name' => 'Str',
#                 '_is_core' => 1,
#                 'display_name' => 'Str',
#                 '_overload_coderef' => sub { "DUMMY" },
#                 'deprecated' => '',
#                 '_overrides_assert_return' => '',
#                 'definition_context' => {
#                   'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                   'line' => 282,
#                   'package' => 'Types::Standard'
#                 },
#                 'uniq' => 9
#               }, 'Type::Tiny' ),
#               'sorter' => sub { "DUMMY" },
#               'coercion' => bless( {
#                 'frozen' => 1,
#                 'name' => '__ANON__',
#                 'type_coercion_map' => [],
#                 'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'},
#                 'display_name' => 'to_LaxNum',
#                 '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'compiled_type_constraint'}
#               }, 'Type::Coercion' ),
#               'name' => 'LaxNum',
#               'library' => 'Types::Standard',
#               'display_name' => 'LaxNum',
#               '_overload_coderef' => sub { "DUMMY" },
#               'deprecated' => '',
#               '_overrides_assert_return' => '',
#               'inlined' => sub { "DUMMY" },
#               'constraint' => sub { "DUMMY" },
#               'definition_context' => {
#                 'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                 'line' => 300,
#                 'package' => 'Types::Standard'
#               },
#               'uniq' => 10
#             }, 'Type::Tiny' ),
#             'coercion' => bless( {
#               'frozen' => 1,
#               'name' => '__ANON__',
#               'type_coercion_map' => [],
#               'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'},
#               'display_name' => 'to_Num',
#               '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'compiled_type_constraint'}
#             }, 'Type::Coercion' ),
#             'name' => 'Num',
#             'library' => 'Types::Standard',
#             'display_name' => 'Num',
#             '_overload_coderef' => sub { "DUMMY" },
#             'deprecated' => '',
#             '_overrides_assert_return' => '',
#             'definition_context' => {
#               'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#               'line' => 335,
#               'package' => 'Types::Standard'
#             },
#             'constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'constraint'},
#             'uniq' => 12
#           }, 'Type::Tiny' ),
#           'coercion' => bless( {
#             'frozen' => 1,
#             'name' => '__ANON__',
#             'type_coercion_map' => [],
#             'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'},
#             'display_name' => 'to_Int',
#             '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'compiled_type_constraint'}
#           }, 'Type::Coercion' ),
#           'name' => 'Int',
#           'library' => 'Types::Standard',
#           'display_name' => 'Int',
#           '_is_core' => 1,
#           '_overload_coderef' => sub { "DUMMY" },
#           'deprecated' => '',
#           '_overrides_assert_return' => '',
#           'inlined' => sub { "DUMMY" },
#           'constraint' => sub { "DUMMY" },
#           'definition_context' => {
#             'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#             'line' => 352,
#             'package' => 'Types::Standard'
#           },
#           'uniq' => 13
#         }, 'Type::Tiny' )
#       }
#     ]
#   },
#   'filename' => 't/40_type_tiny.t',
#   'candidate_name' => 'main::check_arity::second',
#   'linenum' => 94,
#   'args' => $mpc_impl->{'sig'}{'parms'},
#   'code' => sub { "DUMMY" }
# }; (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm:273)
# Copier for main::check_arity::second():
#  #line 276 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
# use strict;
# use warnings;
# sub {
# 
# #line 283 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#     if( $] lt '5.018' || $VERBOSE > 1) {
#         require Data::Dumper;
#         require Test::More;
#         Test::More::diag(sprintf("Positional copier invocation %d:\n%s",
#             ++$Sub::Multi::Tiny::Util::_positional_copier_invocation_number,
#             Data::Dumper->Dump([\@_],['copier_args'])));
#     }
# 
# #line 293 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#     (
# 
# #line 303 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#         $main::check_arity::foo
# #line 306 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#     ) = @_;
# 
#     if( $] lt '5.018' || $VERBOSE > 1) {
#         Test::More::diag(sprintf("After positional copier invocation %d:",
#             $Sub::Multi::Tiny::Util::_positional_copier_invocation_number));
#         Test::More::diag(join "\n", map {
#             sprintf("%s = %s", $_, eval($_))
#         } @vars);
#     }
# 
# } #copier
 (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm:319)
# $mpc_defined_in = 'main::check_arity';
#  $mpc_impl = {
#   'sig' => {
#     'seen' => '',
#     'parms' => [
#       {
#         'named' => '',
#         'name' => '$foo',
#         'reqd' => 1,
#         'type' => bless( {
#           'sorter' => sub { "DUMMY" },
#           'coercion' => bless( {
#             'frozen' => 1,
#             'name' => '__ANON__',
#             'type_coercion_map' => [],
#             'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'},
#             'display_name' => 'to_Str',
#             '_compiled_type_constraint_check' => sub { "DUMMY" }
#           }, 'Type::Coercion' ),
#           'library' => 'Types::Standard',
#           'inlined' => sub { "DUMMY" },
#           'constraint' => sub { "DUMMY" },
#           'type_default' => sub { "DUMMY" },
#           'compiled_type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'coercion'}{'_compiled_type_constraint_check'},
#           'parent' => bless( {
#             'compiled_type_constraint' => sub { "DUMMY" },
#             'parent' => bless( {
#               'compiled_type_constraint' => sub { "DUMMY" },
#               'parent' => bless( {
#                 'compiled_type_constraint' => sub { "DUMMY" },
#                 'parent' => bless( {
#                   'compiled_type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'},
#                   'type_default' => sub { "DUMMY" },
#                   'coercion' => bless( {
#                     'frozen' => 1,
#                     'name' => '__ANON__',
#                     'type_coercion_map' => [],
#                     'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'},
#                     'display_name' => 'to_Any',
#                     '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                   }, 'Type::Coercion' ),
#                   'name' => 'Any',
#                   'library' => 'Types::Standard',
#                   'display_name' => 'Any',
#                   '_is_core' => 1,
#                   'complement_name' => 'None',
#                   '_overload_coderef' => sub { "DUMMY" },
#                   'deprecated' => '',
#                   '_overrides_assert_return' => '',
#                   'constraint' => sub { "DUMMY" },
#                   'inlined' => sub { "DUMMY" },
#                   'definition_context' => {
#                     'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                     'line' => 211,
#                     'package' => 'Types::Standard'
#                   },
#                   'uniq' => 1
#                 }, 'Type::Tiny' ),
#                 'coercion' => bless( {
#                   'frozen' => 1,
#                   'name' => '__ANON__',
#                   'type_coercion_map' => [],
#                   'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'},
#                   'display_name' => 'to_Item',
#                   '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                 }, 'Type::Coercion' ),
#                 'name' => 'Item',
#                 'library' => 'Types::Standard',
#                 'display_name' => 'Item',
#                 '_is_core' => 1,
#                 '_overload_coderef' => sub { "DUMMY" },
#                 'deprecated' => '',
#                 '_overrides_assert_return' => '',
#                 'constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'constraint'},
#                 'inlined' => sub { "DUMMY" },
#                 'definition_context' => {
#                   'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                   'line' => 217,
#                   'package' => 'Types::Standard'
#                 },
#                 'uniq' => 2
#               }, 'Type::Tiny' ),
#               'coercion' => bless( {
#                 'frozen' => 1,
#                 'name' => '__ANON__',
#                 'type_coercion_map' => [],
#                 'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'},
#                 'display_name' => 'to_Defined',
#                 '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'compiled_type_constraint'}
#               }, 'Type::Coercion' ),
#               'name' => 'Defined',
#               'library' => 'Types::Standard',
#               'display_name' => 'Defined',
#               '_is_core' => 1,
#               '_overload_coderef' => sub { "DUMMY" },
#               'deprecated' => '',
#               '_overrides_assert_return' => '',
#               'complementary_type' => bless( {
#                 'coercion' => bless( {
#                   'frozen' => 1,
#                   'name' => '__ANON__',
#                   'type_coercion_map' => [],
#                   'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'complementary_type'},
#                   'display_name' => 'to_Undef',
#                   '_compiled_type_constraint_check' => sub { "DUMMY" }
#                 }, 'Type::Coercion' ),
#                 'library' => 'Types::Standard',
#                 'complementary_type' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'},
#                 'inlined' => sub { "DUMMY" },
#                 'constraint' => sub { "DUMMY" },
#                 'type_default' => sub { "DUMMY" },
#                 'compiled_type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'complementary_type'}{'coercion'}{'_compiled_type_constraint_check'},
#                 'parent' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'},
#                 'name' => 'Undef',
#                 '_is_core' => 1,
#                 'display_name' => 'Undef',
#                 '_overload_coderef' => sub { "DUMMY" },
#                 'deprecated' => '',
#                 '_overrides_assert_return' => '',
#                 'definition_context' => {
#                   'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                   'line' => 245,
#                   'package' => 'Types::Standard'
#                 },
#                 'uniq' => 6
#               }, 'Type::Tiny' ),
#               'inlined' => sub { "DUMMY" },
#               'constraint' => sub { "DUMMY" },
#               'definition_context' => {
#                 'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                 'line' => 253,
#                 'package' => 'Types::Standard'
#               },
#               'uniq' => 7
#             }, 'Type::Tiny' ),
#             'coercion' => bless( {
#               'frozen' => 1,
#               'name' => '__ANON__',
#               'type_coercion_map' => [],
#               'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'},
#               'display_name' => 'to_Value',
#               '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'compiled_type_constraint'}
#             }, 'Type::Coercion' ),
#             'name' => 'Value',
#             'library' => 'Types::Standard',
#             'display_name' => 'Value',
#             '_is_core' => 1,
#             '_overload_coderef' => sub { "DUMMY" },
#             'deprecated' => '',
#             '_overrides_assert_return' => '',
#             'inlined' => sub { "DUMMY" },
#             'constraint' => sub { "DUMMY" },
#             'definition_context' => {
#               'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#               'line' => 267,
#               'package' => 'Types::Standard'
#             },
#             'uniq' => 8
#           }, 'Type::Tiny' ),
#           'name' => 'Str',
#           '_is_core' => 1,
#           'display_name' => 'Str',
#           '_overload_coderef' => sub { "DUMMY" },
#           'deprecated' => '',
#           '_overrides_assert_return' => '',
#           'definition_context' => {
#             'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#             'line' => 282,
#             'package' => 'Types::Standard'
#           },
#           'uniq' => 9
#         }, 'Type::Tiny' )
#       }
#     ]
#   },
#   'filename' => 't/40_type_tiny.t',
#   'candidate_name' => 'main::check_arity::first',
#   'linenum' => 98,
#   'args' => $mpc_impl->{'sig'}{'parms'},
#   'code' => sub { "DUMMY" }
# }; (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm:273)
# Copier for main::check_arity::first():
#  #line 276 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
# use strict;
# use warnings;
# sub {
# 
# #line 283 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#     if( $] lt '5.018' || $VERBOSE > 1) {
#         require Data::Dumper;
#         require Test::More;
#         Test::More::diag(sprintf("Positional copier invocation %d:\n%s",
#             ++$Sub::Multi::Tiny::Util::_positional_copier_invocation_number,
#             Data::Dumper->Dump([\@_],['copier_args'])));
#     }
# 
# #line 293 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#     (
# 
# #line 303 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#         $main::check_arity::foo
# #line 306 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#     ) = @_;
# 
#     if( $] lt '5.018' || $VERBOSE > 1) {
#         Test::More::diag(sprintf("After positional copier invocation %d:",
#             $Sub::Multi::Tiny::Util::_positional_copier_invocation_number));
#         Test::More::diag(join "\n", map {
#             sprintf("%s = %s", $_, eval($_))
#         } @vars);
#     }
# 
# } #copier
 (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm:319)
# _complete_dispatcher making Sub::Multi::Tiny::Dispatcher::TypeParams dispatcher with args: $multisub = {
#   'impls' => [
#     {
#       'sig' => {
#         'seen' => '',
#         'parms' => [
#           {
#             'named' => '',
#             'name' => '$foo',
#             'reqd' => 1,
#             'type' => bless( {
#               'compiled_type_constraint' => sub { "DUMMY" },
#               'type_default' => sub { "DUMMY" },
#               'parent' => bless( {
#                 'compiled_type_constraint' => sub { "DUMMY" },
#                 'parent' => bless( {
#                   'compiled_type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'compiled_type_constraint'},
#                   'type_default' => sub { "DUMMY" },
#                   'parent' => bless( {
#                     'sorter' => sub { "DUMMY" },
#                     'coercion' => bless( {
#                       'frozen' => 1,
#                       'name' => '__ANON__',
#                       'type_coercion_map' => [],
#                       'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'},
#                       'display_name' => 'to_Str',
#                       '_compiled_type_constraint_check' => sub { "DUMMY" }
#                     }, 'Type::Coercion' ),
#                     'library' => 'Types::Standard',
#                     'inlined' => sub { "DUMMY" },
#                     'constraint' => sub { "DUMMY" },
#                     'type_default' => sub { "DUMMY" },
#                     'compiled_type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'coercion'}{'_compiled_type_constraint_check'},
#                     'parent' => bless( {
#                       'compiled_type_constraint' => sub { "DUMMY" },
#                       'parent' => bless( {
#                         'compiled_type_constraint' => sub { "DUMMY" },
#                         'parent' => bless( {
#                           'compiled_type_constraint' => sub { "DUMMY" },
#                           'parent' => bless( {
#                             'compiled_type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'},
#                             'type_default' => sub { "DUMMY" },
#                             'coercion' => bless( {
#                               'frozen' => 1,
#                               'name' => '__ANON__',
#                               'type_coercion_map' => [],
#                               'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                               'display_name' => 'to_Any',
#                               '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                             }, 'Type::Coercion' ),
#                             'name' => 'Any',
#                             'library' => 'Types::Standard',
#                             'display_name' => 'Any',
#                             '_is_core' => 1,
#                             'complement_name' => 'None',
#                             '_overload_coderef' => sub { "DUMMY" },
#                             'deprecated' => '',
#                             '_overrides_assert_return' => '',
#                             'constraint' => sub { "DUMMY" },
#                             'inlined' => sub { "DUMMY" },
#                             'definition_context' => {
#                               'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                               'line' => 211,
#                               'package' => 'Types::Standard'
#                             },
#                             'uniq' => 1
#                           }, 'Type::Tiny' ),
#                           'coercion' => bless( {
#                             'frozen' => 1,
#                             'name' => '__ANON__',
#                             'type_coercion_map' => [],
#                             'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                             'display_name' => 'to_Item',
#                             '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                           }, 'Type::Coercion' ),
#                           'name' => 'Item',
#                           'library' => 'Types::Standard',
#                           'display_name' => 'Item',
#                           '_is_core' => 1,
#                           '_overload_coderef' => sub { "DUMMY" },
#                           'deprecated' => '',
#                           '_overrides_assert_return' => '',
#                           'constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'constraint'},
#                           'inlined' => sub { "DUMMY" },
#                           'definition_context' => {
#                             'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                             'line' => 217,
#                             'package' => 'Types::Standard'
#                           },
#                           'uniq' => 2
#                         }, 'Type::Tiny' ),
#                         'coercion' => bless( {
#                           'frozen' => 1,
#                           'name' => '__ANON__',
#                           'type_coercion_map' => [],
#                           'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                           'display_name' => 'to_Defined',
#                           '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                         }, 'Type::Coercion' ),
#                         'name' => 'Defined',
#                         'library' => 'Types::Standard',
#                         'display_name' => 'Defined',
#                         '_is_core' => 1,
#                         '_overload_coderef' => sub { "DUMMY" },
#                         'deprecated' => '',
#                         '_overrides_assert_return' => '',
#                         'complementary_type' => bless( {
#                           'coercion' => bless( {
#                             'frozen' => 1,
#                             'name' => '__ANON__',
#                             'type_coercion_map' => [],
#                             'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'complementary_type'},
#                             'display_name' => 'to_Undef',
#                             '_compiled_type_constraint_check' => sub { "DUMMY" }
#                           }, 'Type::Coercion' ),
#                           'library' => 'Types::Standard',
#                           'complementary_type' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                           'inlined' => sub { "DUMMY" },
#                           'constraint' => sub { "DUMMY" },
#                           'type_default' => sub { "DUMMY" },
#                           'compiled_type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'complementary_type'}{'coercion'}{'_compiled_type_constraint_check'},
#                           'parent' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                           'name' => 'Undef',
#                           '_is_core' => 1,
#                           'display_name' => 'Undef',
#                           '_overload_coderef' => sub { "DUMMY" },
#                           'deprecated' => '',
#                           '_overrides_assert_return' => '',
#                           'definition_context' => {
#                             'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                             'line' => 245,
#                             'package' => 'Types::Standard'
#                           },
#                           'uniq' => 6
#                         }, 'Type::Tiny' ),
#                         'inlined' => sub { "DUMMY" },
#                         'constraint' => sub { "DUMMY" },
#                         'definition_context' => {
#                           'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                           'line' => 253,
#                           'package' => 'Types::Standard'
#                         },
#                         'uniq' => 7
#                       }, 'Type::Tiny' ),
#                       'coercion' => bless( {
#                         'frozen' => 1,
#                         'name' => '__ANON__',
#                         'type_coercion_map' => [],
#                         'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'},
#                         'display_name' => 'to_Value',
#                         '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                       }, 'Type::Coercion' ),
#                       'name' => 'Value',
#                       'library' => 'Types::Standard',
#                       'display_name' => 'Value',
#                       '_is_core' => 1,
#                       '_overload_coderef' => sub { "DUMMY" },
#                       'deprecated' => '',
#                       '_overrides_assert_return' => '',
#                       'inlined' => sub { "DUMMY" },
#                       'constraint' => sub { "DUMMY" },
#                       'definition_context' => {
#                         'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                         'line' => 267,
#                         'package' => 'Types::Standard'
#                       },
#                       'uniq' => 8
#                     }, 'Type::Tiny' ),
#                     'name' => 'Str',
#                     '_is_core' => 1,
#                     'display_name' => 'Str',
#                     '_overload_coderef' => sub { "DUMMY" },
#                     'deprecated' => '',
#                     '_overrides_assert_return' => '',
#                     'definition_context' => {
#                       'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                       'line' => 282,
#                       'package' => 'Types::Standard'
#                     },
#                     'uniq' => 9
#                   }, 'Type::Tiny' ),
#                   'sorter' => sub { "DUMMY" },
#                   'coercion' => bless( {
#                     'frozen' => 1,
#                     'name' => '__ANON__',
#                     'type_coercion_map' => [],
#                     'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'},
#                     'display_name' => 'to_LaxNum',
#                     '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'compiled_type_constraint'}
#                   }, 'Type::Coercion' ),
#                   'name' => 'LaxNum',
#                   'library' => 'Types::Standard',
#                   'display_name' => 'LaxNum',
#                   '_overload_coderef' => sub { "DUMMY" },
#                   'deprecated' => '',
#                   '_overrides_assert_return' => '',
#                   'inlined' => sub { "DUMMY" },
#                   'constraint' => sub { "DUMMY" },
#                   'definition_context' => {
#                     'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                     'line' => 300,
#                     'package' => 'Types::Standard'
#                   },
#                   'uniq' => 10
#                 }, 'Type::Tiny' ),
#                 'coercion' => bless( {
#                   'frozen' => 1,
#                   'name' => '__ANON__',
#                   'type_coercion_map' => [],
#                   'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'},
#                   'display_name' => 'to_Num',
#                   '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'compiled_type_constraint'}
#                 }, 'Type::Coercion' ),
#                 'name' => 'Num',
#                 'library' => 'Types::Standard',
#                 'display_name' => 'Num',
#                 '_overload_coderef' => sub { "DUMMY" },
#                 'deprecated' => '',
#                 '_overrides_assert_return' => '',
#                 'definition_context' => {
#                   'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                   'line' => 335,
#                   'package' => 'Types::Standard'
#                 },
#                 'constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'constraint'},
#                 'uniq' => 12
#               }, 'Type::Tiny' ),
#               'coercion' => bless( {
#                 'frozen' => 1,
#                 'name' => '__ANON__',
#                 'type_coercion_map' => [],
#                 'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'},
#                 'display_name' => 'to_Int',
#                 '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'compiled_type_constraint'}
#               }, 'Type::Coercion' ),
#               'name' => 'Int',
#               'library' => 'Types::Standard',
#               'display_name' => 'Int',
#               '_is_core' => 1,
#               '_overload_coderef' => sub { "DUMMY" },
#               'deprecated' => '',
#               '_overrides_assert_return' => '',
#               'inlined' => sub { "DUMMY" },
#               'constraint' => sub { "DUMMY" },
#               'definition_context' => {
#                 'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                 'line' => 352,
#                 'package' => 'Types::Standard'
#               },
#               'uniq' => 13
#             }, 'Type::Tiny' )
#           }
#         ]
#       },
#       'filename' => 't/40_type_tiny.t',
#       'candidate_name' => 'main::check_arity::second',
#       'linenum' => 94,
#       'args' => $multisub->{'impls'}[0]{'sig'}{'parms'},
#       'code' => sub { "DUMMY" }
#     },
#     {
#       'sig' => {
#         'seen' => '',
#         'parms' => [
#           {
#             'named' => '',
#             'name' => '$foo',
#             'reqd' => 1,
#             'type' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}
#           }
#         ]
#       },
#       'filename' => 't/40_type_tiny.t',
#       'candidate_name' => 'main::check_arity::first',
#       'linenum' => 98,
#       'args' => $multisub->{'impls'}[1]{'sig'}{'parms'},
#       'code' => sub { "DUMMY" }
#     }
#   ],
#   'used_by' => 'main',
#   'subname' => 'check_arity',
#   'possible_params' => {
#     '$foo' => 1,
#     '$bar' => 1
#   },
#   'defined_in' => 'main::check_arity'
# };
#  $inner_code = '#line 130 "C:\\strawberry\\cpan\\build\\Sub-Multi-Tiny-0.000013-0\\blib\\lib/Sub/Multi/Tiny/Dispatcher/TypeParams.pm"
#             # Find the candidate
#             @_ = $data[0]->(@_);      # $checker.  Dies on error.
#                 # NOTE: this change can\'t be `local`ized because `goto`
#                 # undoes the `local` - see #8
#             $candidate = $data[1]->[${^_TYPE_PARAMS_MULTISIG}];   # impls
#             $copier = $data[2]->[${^_TYPE_PARAMS_MULTISIG}];      # copiers
# 
# ';
#  $data = sub { "DUMMY" };
#  $VAR4 = [
#   $multisub->{'impls'}[0]{'code'},
#   $multisub->{'impls'}[1]{'code'}
# ];
#  $VAR5 = [
#   sub { "DUMMY" },
#   sub { "DUMMY" }
# ]; (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm:200)
# Sub::Multi::Tiny::Dispatcher::TypeParams dispatcher for main::check_arity():
# #line 204 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#         use strict;
#         use warnings;
#         sub {
#             # Find the candidate
#             my ($candidate, $copier);
# 
# #line 130 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Dispatcher/TypeParams.pm"
#             # Find the candidate
#             @_ = $data[0]->(@_);      # $checker.  Dies on error.
#                 # NOTE: this change can't be `local`ized because `goto`
#                 # undoes the `local` - see #8
#             $candidate = $data[1]->[${^_TYPE_PARAMS_MULTISIG}];   # impls
#             $copier = $data[2]->[${^_TYPE_PARAMS_MULTISIG}];      # copiers
# 
# 
# 
#             # Save the present values of the parameters
# 
# #line 219 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
# my $saved_foo = $main::check_arity::foo;
# 
# #line 219 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
# my $saved_bar = $main::check_arity::bar;
# 
# #line 225 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#             # Create the guard
#             my $guard = Guard::guard {
# 
# #line 221 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
# $main::check_arity::foo = $saved_foo;
# 
# #line 221 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
# $main::check_arity::bar = $saved_bar;
# 
# 
# 
#             }; #End of guard
# 
# #line 234 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
# 
#             # Copy the parameters into the variables the candidate
#             # will access them from
#             &$copier;   # $copier gets @_ automatically
# 
#             # Pass the guard so the parameters will be reset once \$candidate
#             # finishes running.
#             @_ = ($guard);
# 
#             # Invoke the selected candidate
#             goto &$candidate;
#         } #dispatcher
# 
 (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm:248)
# Type::Tiny / Types::Standard
# Positional copier invocation 1:
# $copier_args = [
#   'world'
# ];
# After positional copier invocation 1:
# $main::my_multi::foo = world
# Positional copier invocation 2:
# $copier_args = [
#   0
# ];
# After positional copier invocation 2:
# $main::my_multi::foo = 0
# Positional copier invocation 3:
# $copier_args = [
#   42
# ];
# After positional copier invocation 3:
# $main::my_multi::foo = 42
# Positional copier invocation 4:
# $copier_args = [
#   -10
# ];
# After positional copier invocation 4:
# $main::check_int::num = -10
# Positional copier invocation 5:
# $copier_args = [
#   -9
# ];
# After positional copier invocation 5:
# $main::check_int::num = -9
# Positional copier invocation 6:
# $copier_args = [
#   -8
# ];
# After positional copier invocation 6:
# $main::check_int::num = -8
# Positional copier invocation 7:
# $copier_args = [
#   -7
# ];
# After positional copier invocation 7:
# $main::check_int::num = -7
# Positional copier invocation 8:
# $copier_args = [
#   -6
# ];
# After positional copier invocation 8:
# $main::check_int::num = -6
# Positional copier invocation 9:
# $copier_args = [
#   -5
# ];
# After positional copier invocation 9:
# $main::check_int::num = -5
# Positional copier invocation 10:
# $copier_args = [
#   -4
# ];
# After positional copier invocation 10:
# $main::check_int::num = -4
# Positional copier invocation 11:
# $copier_args = [
#   -3
# ];
# After positional copier invocation 11:
# $main::check_int::num = -3
# Positional copier invocation 12:
# $copier_args = [
#   -2
# ];
# After positional copier invocation 12:
# $main::check_int::num = -2
# Positional copier invocation 13:
# $copier_args = [
#   -1
# ];
# After positional copier invocation 13:
# $main::check_int::num = -1
# Positional copier invocation 14:
# $copier_args = [
#   0
# ];
# After positional copier invocation 14:
# $main::check_int::num = 0
# Positional copier invocation 15:
# $copier_args = [
#   1
# ];
# After positional copier invocation 15:
# $main::check_int::num = 1
# Positional copier invocation 16:
# $copier_args = [
#   2
# ];
# After positional copier invocation 16:
# $main::check_int::num = 2
# Positional copier invocation 17:
# $copier_args = [
#   3
# ];
# After positional copier invocation 17:
# $main::check_int::num = 3
# Positional copier invocation 18:
# $copier_args = [
#   4
# ];
# After positional copier invocation 18:
# $main::check_int::num = 4
# Positional copier invocation 19:
# $copier_args = [
#   5
# ];
# After positional copier invocation 19:
# $main::check_int::num = 5
# Positional copier invocation 20:
# $copier_args = [
#   6
# ];
# After positional copier invocation 20:
# $main::check_int::num = 6
# Positional copier invocation 21:
# $copier_args = [
#   7
# ];
# After positional copier invocation 21:
# $main::check_int::num = 7
# Positional copier invocation 22:
# $copier_args = [
#   8
# ];
# After positional copier invocation 22:
# $main::check_int::num = 8
# Positional copier invocation 23:
# $copier_args = [
#   9
# ];
# After positional copier invocation 23:
# $main::check_int::num = 9
# Positional copier invocation 24:
# $copier_args = [
#   10
# ];
# After positional copier invocation 24:
# $main::check_int::num = 10
# Positional copier invocation 25:
# $copier_args = [
#   11
# ];
# After positional copier invocation 25:
# $main::check_int::num = 11
# Positional copier invocation 26:
# $copier_args = [
#   12
# ];
# After positional copier invocation 26:
# $main::check_int::num = 12
# Positional copier invocation 27:
# $copier_args = [
#   13
# ];
# After positional copier invocation 27:
# $main::check_int::num = 13
# Positional copier invocation 28:
# $copier_args = [
#   14
# ];
# After positional copier invocation 28:
# $main::check_int::num = 14
# Positional copier invocation 29:
# $copier_args = [
#   15
# ];
# After positional copier invocation 29:
# $main::check_int::num = 15
# Positional copier invocation 30:
# $copier_args = [
#   '4'
# ];
# After positional copier invocation 30:
# $main::check_2x2::num = 4
# Positional copier invocation 31:
# $copier_args = [
#   '43'
# ];
# After positional copier invocation 31:
# $main::check_2x2::num = 43
# Positional copier invocation 32:
# $copier_args = [
#   'z'
# ];
# After positional copier invocation 32:
# $main::check_2x2::num = z
# Positional copier invocation 33:
# $copier_args = [
#   'xy'
# ];
# After positional copier invocation 33:
# $main::check_2x2::num = xy
# Positional copier invocation 34:
# $copier_args = [
#   'world'
# ];
# After positional copier invocation 34:
# $main::check_arity::foo = world
# Positional copier invocation 35:
# $copier_args = [
#   0
# ];
# After positional copier invocation 35:
# $main::check_arity::foo = 0
# Positional copier invocation 36:
# $copier_args = [
#   42
# ];
# After positional copier invocation 36:
# $main::check_arity::foo = 42
t/40_type_tiny.t ........... ok
# ########################################
# t/41_type_tiny_verbose.t
# Target main::my_multi package Sub::Multi::Tiny (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:144)
# main::my_multi using dispatcher Sub::Multi::Tiny::Dispatcher::TypeParams (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:180)
# Making main::my_multi() (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:184)
# Making main::my_multi attr M (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:202)
# M code:
# #line 231 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm"
# package main::my_multi;
# 
# #line 237 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm"
# use Attribute::Handlers;
# use Sub::Multi::Tiny::Util qw(_hlog);
# ##use Data::Dumper;
# 
# sub M :ATTR(CODE,RAWDATA) {
#     _hlog { require Data::Dumper;
#             'In ', __PACKAGE__, "::M: \n",
#             Data::Dumper->Dump([\@_], ['attr_args']) } 2;
# 
#     my ($package, $symbol, $referent, $attr, $data, $phase,
#         $filename, $linenum) = @_;
#     my $funcname = "$package\::" . *{$symbol}{NAME};
# 
#     _hlog {     # Code from Attribute::Handlers, license perl_5
#         ref($referent),
#         $funcname,
#         "($referent)", "was just declared",
#         "and ascribed the ${attr} attribute",
#         "with data ($data)",
#         "in phase $phase",
#         "in file $filename at line $linenum"
#     } 2;
# 
# #line 264 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm"
#     die 'Dispatchers already created - please file a bug report'
#         if Sub::Multi::Tiny::_dispatchers_created();
# 
#     my $multi_def = $_multisubs{'main::my_multi'};
# 
# #line 272 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm"
#     my $hrSig = Sub::Multi::Tiny::_parse_arglist($data, $funcname);
#     Sub::Multi::Tiny::_check_and_inflate_sig($hrSig, $multi_def,
#         $funcname, $package, $filename, $linenum);
# 
# #line 278 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm"
# 
# #line 282 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm"
#     my $info = {
#         code => $referent,
#         args => $hrSig->{parms},    # TODO remove eventually
#         sig => $hrSig,
# 
#         # For error messages
#         filename => $filename,
#         linenum => $linenum,
#         candidate_name => $funcname
#     };
#     push @{$multi_def->{impls}}, $info;
# 
# } #M
# 
 (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:297)
# Making main::my_multi::my_multi stub (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:212)
# In  main::my_multi ::M: 
#  $attr_args = []; (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:244)
# CODE main::my_multi::second (CODE(0x28f2f2c)) was just declared and ascribed the M attribute with data (Int $foo) in phase CHECK in file t/41_type_tiny_verbose.t at line 16 (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:258)
# Parsing args for main::my_multi::second: Int $foo (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:221)
# In main::my_multi evaluating type 'Int' (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:322)
# In  main::my_multi ::M: 
#  $attr_args = []; (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:244)
# CODE main::my_multi::first (CODE(0x2a15864)) was just declared and ascribed the M attribute with data (Str $foo) in phase CHECK in file t/41_type_tiny_verbose.t at line 20 (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:258)
# Parsing args for main::my_multi::first: Str $foo (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:221)
# In main::my_multi evaluating type 'Str' (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:322)
# Sub::Multi::Tiny in INIT block (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:96)
# Making Type::Params dispatcher for:  $multisub = {
#   'impls' => [
#     {
#       'sig' => {
#         'seen' => '',
#         'parms' => [
#           {
#             'named' => '',
#             'name' => '$foo',
#             'reqd' => 1,
#             'type' => bless( {
#               'compiled_type_constraint' => sub { "DUMMY" },
#               'type_default' => sub { "DUMMY" },
#               'parent' => bless( {
#                 'compiled_type_constraint' => sub { "DUMMY" },
#                 'parent' => bless( {
#                   'compiled_type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'compiled_type_constraint'},
#                   'type_default' => sub { "DUMMY" },
#                   'parent' => bless( {
#                     'sorter' => sub { "DUMMY" },
#                     'coercion' => bless( {
#                       'frozen' => 1,
#                       'name' => '__ANON__',
#                       'type_coercion_map' => [],
#                       'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'},
#                       'display_name' => 'to_Str',
#                       '_compiled_type_constraint_check' => sub { "DUMMY" }
#                     }, 'Type::Coercion' ),
#                     'library' => 'Types::Standard',
#                     'inlined' => sub { "DUMMY" },
#                     'constraint' => sub { "DUMMY" },
#                     'type_default' => sub { "DUMMY" },
#                     'compiled_type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'coercion'}{'_compiled_type_constraint_check'},
#                     'parent' => bless( {
#                       'compiled_type_constraint' => sub { "DUMMY" },
#                       'parent' => bless( {
#                         'compiled_type_constraint' => sub { "DUMMY" },
#                         'parent' => bless( {
#                           'compiled_type_constraint' => sub { "DUMMY" },
#                           'parent' => bless( {
#                             'compiled_type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'},
#                             'type_default' => sub { "DUMMY" },
#                             'coercion' => bless( {
#                               'frozen' => 1,
#                               'name' => '__ANON__',
#                               'type_coercion_map' => [],
#                               'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                               'display_name' => 'to_Any',
#                               '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                             }, 'Type::Coercion' ),
#                             'name' => 'Any',
#                             'library' => 'Types::Standard',
#                             'display_name' => 'Any',
#                             '_is_core' => 1,
#                             'complement_name' => 'None',
#                             '_overload_coderef' => sub { "DUMMY" },
#                             'deprecated' => '',
#                             '_overrides_assert_return' => '',
#                             'constraint' => sub { "DUMMY" },
#                             'inlined' => sub { "DUMMY" },
#                             'definition_context' => {
#                               'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                               'line' => 211,
#                               'package' => 'Types::Standard'
#                             },
#                             'uniq' => 1
#                           }, 'Type::Tiny' ),
#                           'coercion' => bless( {
#                             'frozen' => 1,
#                             'name' => '__ANON__',
#                             'type_coercion_map' => [],
#                             'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                             'display_name' => 'to_Item',
#                             '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                           }, 'Type::Coercion' ),
#                           'name' => 'Item',
#                           'library' => 'Types::Standard',
#                           'display_name' => 'Item',
#                           '_is_core' => 1,
#                           '_overload_coderef' => sub { "DUMMY" },
#                           'deprecated' => '',
#                           '_overrides_assert_return' => '',
#                           'constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'constraint'},
#                           'inlined' => sub { "DUMMY" },
#                           'definition_context' => {
#                             'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                             'line' => 217,
#                             'package' => 'Types::Standard'
#                           },
#                           'uniq' => 2
#                         }, 'Type::Tiny' ),
#                         'coercion' => bless( {
#                           'frozen' => 1,
#                           'name' => '__ANON__',
#                           'type_coercion_map' => [],
#                           'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                           'display_name' => 'to_Defined',
#                           '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                         }, 'Type::Coercion' ),
#                         'name' => 'Defined',
#                         'library' => 'Types::Standard',
#                         'display_name' => 'Defined',
#                         '_is_core' => 1,
#                         '_overload_coderef' => sub { "DUMMY" },
#                         'deprecated' => '',
#                         '_overrides_assert_return' => '',
#                         'complementary_type' => bless( {
#                           'coercion' => bless( {
#                             'frozen' => 1,
#                             'name' => '__ANON__',
#                             'type_coercion_map' => [],
#                             'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'complementary_type'},
#                             'display_name' => 'to_Undef',
#                             '_compiled_type_constraint_check' => sub { "DUMMY" }
#                           }, 'Type::Coercion' ),
#                           'library' => 'Types::Standard',
#                           'complementary_type' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                           'inlined' => sub { "DUMMY" },
#                           'constraint' => sub { "DUMMY" },
#                           'type_default' => sub { "DUMMY" },
#                           'compiled_type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'complementary_type'}{'coercion'}{'_compiled_type_constraint_check'},
#                           'parent' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                           'name' => 'Undef',
#                           '_is_core' => 1,
#                           'display_name' => 'Undef',
#                           '_overload_coderef' => sub { "DUMMY" },
#                           'deprecated' => '',
#                           '_overrides_assert_return' => '',
#                           'definition_context' => {
#                             'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                             'line' => 245,
#                             'package' => 'Types::Standard'
#                           },
#                           'uniq' => 6
#                         }, 'Type::Tiny' ),
#                         'inlined' => sub { "DUMMY" },
#                         'constraint' => sub { "DUMMY" },
#                         'definition_context' => {
#                           'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                           'line' => 253,
#                           'package' => 'Types::Standard'
#                         },
#                         'uniq' => 7
#                       }, 'Type::Tiny' ),
#                       'coercion' => bless( {
#                         'frozen' => 1,
#                         'name' => '__ANON__',
#                         'type_coercion_map' => [],
#                         'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'},
#                         'display_name' => 'to_Value',
#                         '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                       }, 'Type::Coercion' ),
#                       'name' => 'Value',
#                       'library' => 'Types::Standard',
#                       'display_name' => 'Value',
#                       '_is_core' => 1,
#                       '_overload_coderef' => sub { "DUMMY" },
#                       'deprecated' => '',
#                       '_overrides_assert_return' => '',
#                       'inlined' => sub { "DUMMY" },
#                       'constraint' => sub { "DUMMY" },
#                       'definition_context' => {
#                         'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                         'line' => 267,
#                         'package' => 'Types::Standard'
#                       },
#                       'uniq' => 8
#                     }, 'Type::Tiny' ),
#                     'name' => 'Str',
#                     '_is_core' => 1,
#                     'display_name' => 'Str',
#                     '_overload_coderef' => sub { "DUMMY" },
#                     'deprecated' => '',
#                     '_overrides_assert_return' => '',
#                     'definition_context' => {
#                       'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                       'line' => 282,
#                       'package' => 'Types::Standard'
#                     },
#                     'uniq' => 9
#                   }, 'Type::Tiny' ),
#                   'sorter' => sub { "DUMMY" },
#                   'coercion' => bless( {
#                     'frozen' => 1,
#                     'name' => '__ANON__',
#                     'type_coercion_map' => [],
#                     'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'},
#                     'display_name' => 'to_LaxNum',
#                     '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'compiled_type_constraint'}
#                   }, 'Type::Coercion' ),
#                   'name' => 'LaxNum',
#                   'library' => 'Types::Standard',
#                   'display_name' => 'LaxNum',
#                   '_overload_coderef' => sub { "DUMMY" },
#                   'deprecated' => '',
#                   '_overrides_assert_return' => '',
#                   'inlined' => sub { "DUMMY" },
#                   'constraint' => sub { "DUMMY" },
#                   'definition_context' => {
#                     'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                     'line' => 300,
#                     'package' => 'Types::Standard'
#                   },
#                   'uniq' => 10
#                 }, 'Type::Tiny' ),
#                 'coercion' => bless( {
#                   'frozen' => 1,
#                   'name' => '__ANON__',
#                   'type_coercion_map' => [],
#                   'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'},
#                   'display_name' => 'to_Num',
#                   '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'compiled_type_constraint'}
#                 }, 'Type::Coercion' ),
#                 'name' => 'Num',
#                 'library' => 'Types::Standard',
#                 'display_name' => 'Num',
#                 '_overload_coderef' => sub { "DUMMY" },
#                 'deprecated' => '',
#                 '_overrides_assert_return' => '',
#                 'definition_context' => {
#                   'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                   'line' => 335,
#                   'package' => 'Types::Standard'
#                 },
#                 'constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'constraint'},
#                 'uniq' => 12
#               }, 'Type::Tiny' ),
#               'coercion' => bless( {
#                 'frozen' => 1,
#                 'name' => '__ANON__',
#                 'type_coercion_map' => [],
#                 'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'},
#                 'display_name' => 'to_Int',
#                 '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'compiled_type_constraint'}
#               }, 'Type::Coercion' ),
#               'name' => 'Int',
#               'library' => 'Types::Standard',
#               'display_name' => 'Int',
#               '_is_core' => 1,
#               '_overload_coderef' => sub { "DUMMY" },
#               'deprecated' => '',
#               '_overrides_assert_return' => '',
#               'inlined' => sub { "DUMMY" },
#               'constraint' => sub { "DUMMY" },
#               'definition_context' => {
#                 'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                 'line' => 352,
#                 'package' => 'Types::Standard'
#               },
#               'uniq' => 13
#             }, 'Type::Tiny' )
#           }
#         ]
#       },
#       'filename' => 't/41_type_tiny_verbose.t',
#       'candidate_name' => 'main::my_multi::second',
#       'linenum' => 16,
#       'args' => $multisub->{'impls'}[0]{'sig'}{'parms'},
#       'code' => sub { "DUMMY" }
#     },
#     {
#       'sig' => {
#         'seen' => '',
#         'parms' => [
#           {
#             'named' => '',
#             'name' => '$foo',
#             'reqd' => 1,
#             'type' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}
#           }
#         ]
#       },
#       'filename' => 't/41_type_tiny_verbose.t',
#       'candidate_name' => 'main::my_multi::first',
#       'linenum' => 20,
#       'args' => $multisub->{'impls'}[1]{'sig'}{'parms'},
#       'code' => sub { "DUMMY" }
#     }
#   ],
#   'used_by' => 'main',
#   'subname' => 'my_multi',
#   'possible_params' => {
#     '$foo' => 1
#   },
#   'defined_in' => 'main::my_multi'
# }; (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Dispatcher/TypeParams.pm:82)
# $mpc_defined_in = 'main::my_multi';
#  $mpc_impl = {
#   'sig' => {
#     'seen' => '',
#     'parms' => [
#       {
#         'named' => '',
#         'name' => '$foo',
#         'reqd' => 1,
#         'type' => bless( {
#           'compiled_type_constraint' => sub { "DUMMY" },
#           'type_default' => sub { "DUMMY" },
#           'parent' => bless( {
#             'compiled_type_constraint' => sub { "DUMMY" },
#             'parent' => bless( {
#               'compiled_type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'compiled_type_constraint'},
#               'type_default' => sub { "DUMMY" },
#               'parent' => bless( {
#                 'sorter' => sub { "DUMMY" },
#                 'coercion' => bless( {
#                   'frozen' => 1,
#                   'name' => '__ANON__',
#                   'type_coercion_map' => [],
#                   'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'},
#                   'display_name' => 'to_Str',
#                   '_compiled_type_constraint_check' => sub { "DUMMY" }
#                 }, 'Type::Coercion' ),
#                 'library' => 'Types::Standard',
#                 'inlined' => sub { "DUMMY" },
#                 'constraint' => sub { "DUMMY" },
#                 'type_default' => sub { "DUMMY" },
#                 'compiled_type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'coercion'}{'_compiled_type_constraint_check'},
#                 'parent' => bless( {
#                   'compiled_type_constraint' => sub { "DUMMY" },
#                   'parent' => bless( {
#                     'compiled_type_constraint' => sub { "DUMMY" },
#                     'parent' => bless( {
#                       'compiled_type_constraint' => sub { "DUMMY" },
#                       'parent' => bless( {
#                         'compiled_type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'},
#                         'type_default' => sub { "DUMMY" },
#                         'coercion' => bless( {
#                           'frozen' => 1,
#                           'name' => '__ANON__',
#                           'type_coercion_map' => [],
#                           'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                           'display_name' => 'to_Any',
#                           '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                         }, 'Type::Coercion' ),
#                         'name' => 'Any',
#                         'library' => 'Types::Standard',
#                         'display_name' => 'Any',
#                         '_is_core' => 1,
#                         'complement_name' => 'None',
#                         '_overload_coderef' => sub { "DUMMY" },
#                         'deprecated' => '',
#                         '_overrides_assert_return' => '',
#                         'constraint' => sub { "DUMMY" },
#                         'inlined' => sub { "DUMMY" },
#                         'definition_context' => {
#                           'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                           'line' => 211,
#                           'package' => 'Types::Standard'
#                         },
#                         'uniq' => 1
#                       }, 'Type::Tiny' ),
#                       'coercion' => bless( {
#                         'frozen' => 1,
#                         'name' => '__ANON__',
#                         'type_coercion_map' => [],
#                         'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                         'display_name' => 'to_Item',
#                         '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                       }, 'Type::Coercion' ),
#                       'name' => 'Item',
#                       'library' => 'Types::Standard',
#                       'display_name' => 'Item',
#                       '_is_core' => 1,
#                       '_overload_coderef' => sub { "DUMMY" },
#                       'deprecated' => '',
#                       '_overrides_assert_return' => '',
#                       'constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'constraint'},
#                       'inlined' => sub { "DUMMY" },
#                       'definition_context' => {
#                         'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                         'line' => 217,
#                         'package' => 'Types::Standard'
#                       },
#                       'uniq' => 2
#                     }, 'Type::Tiny' ),
#                     'coercion' => bless( {
#                       'frozen' => 1,
#                       'name' => '__ANON__',
#                       'type_coercion_map' => [],
#                       'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                       'display_name' => 'to_Defined',
#                       '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                     }, 'Type::Coercion' ),
#                     'name' => 'Defined',
#                     'library' => 'Types::Standard',
#                     'display_name' => 'Defined',
#                     '_is_core' => 1,
#                     '_overload_coderef' => sub { "DUMMY" },
#                     'deprecated' => '',
#                     '_overrides_assert_return' => '',
#                     'complementary_type' => bless( {
#                       'coercion' => bless( {
#                         'frozen' => 1,
#                         'name' => '__ANON__',
#                         'type_coercion_map' => [],
#                         'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'complementary_type'},
#                         'display_name' => 'to_Undef',
#                         '_compiled_type_constraint_check' => sub { "DUMMY" }
#                       }, 'Type::Coercion' ),
#                       'library' => 'Types::Standard',
#                       'complementary_type' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                       'inlined' => sub { "DUMMY" },
#                       'constraint' => sub { "DUMMY" },
#                       'type_default' => sub { "DUMMY" },
#                       'compiled_type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'complementary_type'}{'coercion'}{'_compiled_type_constraint_check'},
#                       'parent' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                       'name' => 'Undef',
#                       '_is_core' => 1,
#                       'display_name' => 'Undef',
#                       '_overload_coderef' => sub { "DUMMY" },
#                       'deprecated' => '',
#                       '_overrides_assert_return' => '',
#                       'definition_context' => {
#                         'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                         'line' => 245,
#                         'package' => 'Types::Standard'
#                       },
#                       'uniq' => 6
#                     }, 'Type::Tiny' ),
#                     'inlined' => sub { "DUMMY" },
#                     'constraint' => sub { "DUMMY" },
#                     'definition_context' => {
#                       'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                       'line' => 253,
#                       'package' => 'Types::Standard'
#                     },
#                     'uniq' => 7
#                   }, 'Type::Tiny' ),
#                   'coercion' => bless( {
#                     'frozen' => 1,
#                     'name' => '__ANON__',
#                     'type_coercion_map' => [],
#                     'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'},
#                     'display_name' => 'to_Value',
#                     '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                   }, 'Type::Coercion' ),
#                   'name' => 'Value',
#                   'library' => 'Types::Standard',
#                   'display_name' => 'Value',
#                   '_is_core' => 1,
#                   '_overload_coderef' => sub { "DUMMY" },
#                   'deprecated' => '',
#                   '_overrides_assert_return' => '',
#                   'inlined' => sub { "DUMMY" },
#                   'constraint' => sub { "DUMMY" },
#                   'definition_context' => {
#                     'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                     'line' => 267,
#                     'package' => 'Types::Standard'
#                   },
#                   'uniq' => 8
#                 }, 'Type::Tiny' ),
#                 'name' => 'Str',
#                 '_is_core' => 1,
#                 'display_name' => 'Str',
#                 '_overload_coderef' => sub { "DUMMY" },
#                 'deprecated' => '',
#                 '_overrides_assert_return' => '',
#                 'definition_context' => {
#                   'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                   'line' => 282,
#                   'package' => 'Types::Standard'
#                 },
#                 'uniq' => 9
#               }, 'Type::Tiny' ),
#               'sorter' => sub { "DUMMY" },
#               'coercion' => bless( {
#                 'frozen' => 1,
#                 'name' => '__ANON__',
#                 'type_coercion_map' => [],
#                 'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'},
#                 'display_name' => 'to_LaxNum',
#                 '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'compiled_type_constraint'}
#               }, 'Type::Coercion' ),
#               'name' => 'LaxNum',
#               'library' => 'Types::Standard',
#               'display_name' => 'LaxNum',
#               '_overload_coderef' => sub { "DUMMY" },
#               'deprecated' => '',
#               '_overrides_assert_return' => '',
#               'inlined' => sub { "DUMMY" },
#               'constraint' => sub { "DUMMY" },
#               'definition_context' => {
#                 'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                 'line' => 300,
#                 'package' => 'Types::Standard'
#               },
#               'uniq' => 10
#             }, 'Type::Tiny' ),
#             'coercion' => bless( {
#               'frozen' => 1,
#               'name' => '__ANON__',
#               'type_coercion_map' => [],
#               'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'},
#               'display_name' => 'to_Num',
#               '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'compiled_type_constraint'}
#             }, 'Type::Coercion' ),
#             'name' => 'Num',
#             'library' => 'Types::Standard',
#             'display_name' => 'Num',
#             '_overload_coderef' => sub { "DUMMY" },
#             'deprecated' => '',
#             '_overrides_assert_return' => '',
#             'definition_context' => {
#               'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#               'line' => 335,
#               'package' => 'Types::Standard'
#             },
#             'constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'constraint'},
#             'uniq' => 12
#           }, 'Type::Tiny' ),
#           'coercion' => bless( {
#             'frozen' => 1,
#             'name' => '__ANON__',
#             'type_coercion_map' => [],
#             'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'},
#             'display_name' => 'to_Int',
#             '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'compiled_type_constraint'}
#           }, 'Type::Coercion' ),
#           'name' => 'Int',
#           'library' => 'Types::Standard',
#           'display_name' => 'Int',
#           '_is_core' => 1,
#           '_overload_coderef' => sub { "DUMMY" },
#           'deprecated' => '',
#           '_overrides_assert_return' => '',
#           'inlined' => sub { "DUMMY" },
#           'constraint' => sub { "DUMMY" },
#           'definition_context' => {
#             'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#             'line' => 352,
#             'package' => 'Types::Standard'
#           },
#           'uniq' => 13
#         }, 'Type::Tiny' )
#       }
#     ]
#   },
#   'filename' => 't/41_type_tiny_verbose.t',
#   'candidate_name' => 'main::my_multi::second',
#   'linenum' => 16,
#   'args' => $mpc_impl->{'sig'}{'parms'},
#   'code' => sub { "DUMMY" }
# }; (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm:273)
# Copier for main::my_multi::second():
#  #line 276 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
# use strict;
# use warnings;
# sub {
# 
# #line 283 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#     if( $] lt '5.018' || $VERBOSE > 1) {
#         require Data::Dumper;
#         require Test::More;
#         Test::More::diag(sprintf("Positional copier invocation %d:\n%s",
#             ++$Sub::Multi::Tiny::Util::_positional_copier_invocation_number,
#             Data::Dumper->Dump([\@_],['copier_args'])));
#     }
# 
# #line 293 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#     (
# 
# #line 303 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#         $main::my_multi::foo
# #line 306 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#     ) = @_;
# 
#     if( $] lt '5.018' || $VERBOSE > 1) {
#         Test::More::diag(sprintf("After positional copier invocation %d:",
#             $Sub::Multi::Tiny::Util::_positional_copier_invocation_number));
#         Test::More::diag(join "\n", map {
#             sprintf("%s = %s", $_, eval($_))
#         } @vars);
#     }
# 
# } #copier
 (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm:319)
# $mpc_defined_in = 'main::my_multi';
#  $mpc_impl = {
#   'sig' => {
#     'seen' => '',
#     'parms' => [
#       {
#         'named' => '',
#         'name' => '$foo',
#         'reqd' => 1,
#         'type' => bless( {
#           'sorter' => sub { "DUMMY" },
#           'coercion' => bless( {
#             'frozen' => 1,
#             'name' => '__ANON__',
#             'type_coercion_map' => [],
#             'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'},
#             'display_name' => 'to_Str',
#             '_compiled_type_constraint_check' => sub { "DUMMY" }
#           }, 'Type::Coercion' ),
#           'library' => 'Types::Standard',
#           'inlined' => sub { "DUMMY" },
#           'constraint' => sub { "DUMMY" },
#           'type_default' => sub { "DUMMY" },
#           'compiled_type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'coercion'}{'_compiled_type_constraint_check'},
#           'parent' => bless( {
#             'compiled_type_constraint' => sub { "DUMMY" },
#             'parent' => bless( {
#               'compiled_type_constraint' => sub { "DUMMY" },
#               'parent' => bless( {
#                 'compiled_type_constraint' => sub { "DUMMY" },
#                 'parent' => bless( {
#                   'compiled_type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'},
#                   'type_default' => sub { "DUMMY" },
#                   'coercion' => bless( {
#                     'frozen' => 1,
#                     'name' => '__ANON__',
#                     'type_coercion_map' => [],
#                     'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'},
#                     'display_name' => 'to_Any',
#                     '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                   }, 'Type::Coercion' ),
#                   'name' => 'Any',
#                   'library' => 'Types::Standard',
#                   'display_name' => 'Any',
#                   '_is_core' => 1,
#                   'complement_name' => 'None',
#                   '_overload_coderef' => sub { "DUMMY" },
#                   'deprecated' => '',
#                   '_overrides_assert_return' => '',
#                   'constraint' => sub { "DUMMY" },
#                   'inlined' => sub { "DUMMY" },
#                   'definition_context' => {
#                     'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                     'line' => 211,
#                     'package' => 'Types::Standard'
#                   },
#                   'uniq' => 1
#                 }, 'Type::Tiny' ),
#                 'coercion' => bless( {
#                   'frozen' => 1,
#                   'name' => '__ANON__',
#                   'type_coercion_map' => [],
#                   'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'},
#                   'display_name' => 'to_Item',
#                   '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                 }, 'Type::Coercion' ),
#                 'name' => 'Item',
#                 'library' => 'Types::Standard',
#                 'display_name' => 'Item',
#                 '_is_core' => 1,
#                 '_overload_coderef' => sub { "DUMMY" },
#                 'deprecated' => '',
#                 '_overrides_assert_return' => '',
#                 'constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'constraint'},
#                 'inlined' => sub { "DUMMY" },
#                 'definition_context' => {
#                   'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                   'line' => 217,
#                   'package' => 'Types::Standard'
#                 },
#                 'uniq' => 2
#               }, 'Type::Tiny' ),
#               'coercion' => bless( {
#                 'frozen' => 1,
#                 'name' => '__ANON__',
#                 'type_coercion_map' => [],
#                 'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'},
#                 'display_name' => 'to_Defined',
#                 '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'compiled_type_constraint'}
#               }, 'Type::Coercion' ),
#               'name' => 'Defined',
#               'library' => 'Types::Standard',
#               'display_name' => 'Defined',
#               '_is_core' => 1,
#               '_overload_coderef' => sub { "DUMMY" },
#               'deprecated' => '',
#               '_overrides_assert_return' => '',
#               'complementary_type' => bless( {
#                 'coercion' => bless( {
#                   'frozen' => 1,
#                   'name' => '__ANON__',
#                   'type_coercion_map' => [],
#                   'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'complementary_type'},
#                   'display_name' => 'to_Undef',
#                   '_compiled_type_constraint_check' => sub { "DUMMY" }
#                 }, 'Type::Coercion' ),
#                 'library' => 'Types::Standard',
#                 'complementary_type' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'},
#                 'inlined' => sub { "DUMMY" },
#                 'constraint' => sub { "DUMMY" },
#                 'type_default' => sub { "DUMMY" },
#                 'compiled_type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'complementary_type'}{'coercion'}{'_compiled_type_constraint_check'},
#                 'parent' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'},
#                 'name' => 'Undef',
#                 '_is_core' => 1,
#                 'display_name' => 'Undef',
#                 '_overload_coderef' => sub { "DUMMY" },
#                 'deprecated' => '',
#                 '_overrides_assert_return' => '',
#                 'definition_context' => {
#                   'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                   'line' => 245,
#                   'package' => 'Types::Standard'
#                 },
#                 'uniq' => 6
#               }, 'Type::Tiny' ),
#               'inlined' => sub { "DUMMY" },
#               'constraint' => sub { "DUMMY" },
#               'definition_context' => {
#                 'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                 'line' => 253,
#                 'package' => 'Types::Standard'
#               },
#               'uniq' => 7
#             }, 'Type::Tiny' ),
#             'coercion' => bless( {
#               'frozen' => 1,
#               'name' => '__ANON__',
#               'type_coercion_map' => [],
#               'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'},
#               'display_name' => 'to_Value',
#               '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'compiled_type_constraint'}
#             }, 'Type::Coercion' ),
#             'name' => 'Value',
#             'library' => 'Types::Standard',
#             'display_name' => 'Value',
#             '_is_core' => 1,
#             '_overload_coderef' => sub { "DUMMY" },
#             'deprecated' => '',
#             '_overrides_assert_return' => '',
#             'inlined' => sub { "DUMMY" },
#             'constraint' => sub { "DUMMY" },
#             'definition_context' => {
#               'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#               'line' => 267,
#               'package' => 'Types::Standard'
#             },
#             'uniq' => 8
#           }, 'Type::Tiny' ),
#           'name' => 'Str',
#           '_is_core' => 1,
#           'display_name' => 'Str',
#           '_overload_coderef' => sub { "DUMMY" },
#           'deprecated' => '',
#           '_overrides_assert_return' => '',
#           'definition_context' => {
#             'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#             'line' => 282,
#             'package' => 'Types::Standard'
#           },
#           'uniq' => 9
#         }, 'Type::Tiny' )
#       }
#     ]
#   },
#   'filename' => 't/41_type_tiny_verbose.t',
#   'candidate_name' => 'main::my_multi::first',
#   'linenum' => 20,
#   'args' => $mpc_impl->{'sig'}{'parms'},
#   'code' => sub { "DUMMY" }
# }; (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm:273)
# Copier for main::my_multi::first():
#  #line 276 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
# use strict;
# use warnings;
# sub {
# 
# #line 283 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#     if( $] lt '5.018' || $VERBOSE > 1) {
#         require Data::Dumper;
#         require Test::More;
#         Test::More::diag(sprintf("Positional copier invocation %d:\n%s",
#             ++$Sub::Multi::Tiny::Util::_positional_copier_invocation_number,
#             Data::Dumper->Dump([\@_],['copier_args'])));
#     }
# 
# #line 293 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#     (
# 
# #line 303 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#         $main::my_multi::foo
# #line 306 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#     ) = @_;
# 
#     if( $] lt '5.018' || $VERBOSE > 1) {
#         Test::More::diag(sprintf("After positional copier invocation %d:",
#             $Sub::Multi::Tiny::Util::_positional_copier_invocation_number));
#         Test::More::diag(join "\n", map {
#             sprintf("%s = %s", $_, eval($_))
#         } @vars);
#     }
# 
# } #copier
 (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm:319)
# _complete_dispatcher making Sub::Multi::Tiny::Dispatcher::TypeParams dispatcher with args: $multisub = {
#   'impls' => [
#     {
#       'sig' => {
#         'seen' => '',
#         'parms' => [
#           {
#             'named' => '',
#             'name' => '$foo',
#             'reqd' => 1,
#             'type' => bless( {
#               'compiled_type_constraint' => sub { "DUMMY" },
#               'type_default' => sub { "DUMMY" },
#               'parent' => bless( {
#                 'compiled_type_constraint' => sub { "DUMMY" },
#                 'parent' => bless( {
#                   'compiled_type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'compiled_type_constraint'},
#                   'type_default' => sub { "DUMMY" },
#                   'parent' => bless( {
#                     'sorter' => sub { "DUMMY" },
#                     'coercion' => bless( {
#                       'frozen' => 1,
#                       'name' => '__ANON__',
#                       'type_coercion_map' => [],
#                       'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'},
#                       'display_name' => 'to_Str',
#                       '_compiled_type_constraint_check' => sub { "DUMMY" }
#                     }, 'Type::Coercion' ),
#                     'library' => 'Types::Standard',
#                     'inlined' => sub { "DUMMY" },
#                     'constraint' => sub { "DUMMY" },
#                     'type_default' => sub { "DUMMY" },
#                     'compiled_type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'coercion'}{'_compiled_type_constraint_check'},
#                     'parent' => bless( {
#                       'compiled_type_constraint' => sub { "DUMMY" },
#                       'parent' => bless( {
#                         'compiled_type_constraint' => sub { "DUMMY" },
#                         'parent' => bless( {
#                           'compiled_type_constraint' => sub { "DUMMY" },
#                           'parent' => bless( {
#                             'compiled_type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'},
#                             'type_default' => sub { "DUMMY" },
#                             'coercion' => bless( {
#                               'frozen' => 1,
#                               'name' => '__ANON__',
#                               'type_coercion_map' => [],
#                               'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                               'display_name' => 'to_Any',
#                               '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                             }, 'Type::Coercion' ),
#                             'name' => 'Any',
#                             'library' => 'Types::Standard',
#                             'display_name' => 'Any',
#                             '_is_core' => 1,
#                             'complement_name' => 'None',
#                             '_overload_coderef' => sub { "DUMMY" },
#                             'deprecated' => '',
#                             '_overrides_assert_return' => '',
#                             'constraint' => sub { "DUMMY" },
#                             'inlined' => sub { "DUMMY" },
#                             'definition_context' => {
#                               'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                               'line' => 211,
#                               'package' => 'Types::Standard'
#                             },
#                             'uniq' => 1
#                           }, 'Type::Tiny' ),
#                           'coercion' => bless( {
#                             'frozen' => 1,
#                             'name' => '__ANON__',
#                             'type_coercion_map' => [],
#                             'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                             'display_name' => 'to_Item',
#                             '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                           }, 'Type::Coercion' ),
#                           'name' => 'Item',
#                           'library' => 'Types::Standard',
#                           'display_name' => 'Item',
#                           '_is_core' => 1,
#                           '_overload_coderef' => sub { "DUMMY" },
#                           'deprecated' => '',
#                           '_overrides_assert_return' => '',
#                           'constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'constraint'},
#                           'inlined' => sub { "DUMMY" },
#                           'definition_context' => {
#                             'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                             'line' => 217,
#                             'package' => 'Types::Standard'
#                           },
#                           'uniq' => 2
#                         }, 'Type::Tiny' ),
#                         'coercion' => bless( {
#                           'frozen' => 1,
#                           'name' => '__ANON__',
#                           'type_coercion_map' => [],
#                           'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                           'display_name' => 'to_Defined',
#                           '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                         }, 'Type::Coercion' ),
#                         'name' => 'Defined',
#                         'library' => 'Types::Standard',
#                         'display_name' => 'Defined',
#                         '_is_core' => 1,
#                         '_overload_coderef' => sub { "DUMMY" },
#                         'deprecated' => '',
#                         '_overrides_assert_return' => '',
#                         'complementary_type' => bless( {
#                           'coercion' => bless( {
#                             'frozen' => 1,
#                             'name' => '__ANON__',
#                             'type_coercion_map' => [],
#                             'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'complementary_type'},
#                             'display_name' => 'to_Undef',
#                             '_compiled_type_constraint_check' => sub { "DUMMY" }
#                           }, 'Type::Coercion' ),
#                           'library' => 'Types::Standard',
#                           'complementary_type' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                           'inlined' => sub { "DUMMY" },
#                           'constraint' => sub { "DUMMY" },
#                           'type_default' => sub { "DUMMY" },
#                           'compiled_type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'complementary_type'}{'coercion'}{'_compiled_type_constraint_check'},
#                           'parent' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                           'name' => 'Undef',
#                           '_is_core' => 1,
#                           'display_name' => 'Undef',
#                           '_overload_coderef' => sub { "DUMMY" },
#                           'deprecated' => '',
#                           '_overrides_assert_return' => '',
#                           'definition_context' => {
#                             'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                             'line' => 245,
#                             'package' => 'Types::Standard'
#                           },
#                           'uniq' => 6
#                         }, 'Type::Tiny' ),
#                         'inlined' => sub { "DUMMY" },
#                         'constraint' => sub { "DUMMY" },
#                         'definition_context' => {
#                           'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                           'line' => 253,
#                           'package' => 'Types::Standard'
#                         },
#                         'uniq' => 7
#                       }, 'Type::Tiny' ),
#                       'coercion' => bless( {
#                         'frozen' => 1,
#                         'name' => '__ANON__',
#                         'type_coercion_map' => [],
#                         'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'},
#                         'display_name' => 'to_Value',
#                         '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                       }, 'Type::Coercion' ),
#                       'name' => 'Value',
#                       'library' => 'Types::Standard',
#                       'display_name' => 'Value',
#                       '_is_core' => 1,
#                       '_overload_coderef' => sub { "DUMMY" },
#                       'deprecated' => '',
#                       '_overrides_assert_return' => '',
#                       'inlined' => sub { "DUMMY" },
#                       'constraint' => sub { "DUMMY" },
#                       'definition_context' => {
#                         'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                         'line' => 267,
#                         'package' => 'Types::Standard'
#                       },
#                       'uniq' => 8
#                     }, 'Type::Tiny' ),
#                     'name' => 'Str',
#                     '_is_core' => 1,
#                     'display_name' => 'Str',
#                     '_overload_coderef' => sub { "DUMMY" },
#                     'deprecated' => '',
#                     '_overrides_assert_return' => '',
#                     'definition_context' => {
#                       'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                       'line' => 282,
#                       'package' => 'Types::Standard'
#                     },
#                     'uniq' => 9
#                   }, 'Type::Tiny' ),
#                   'sorter' => sub { "DUMMY" },
#                   'coercion' => bless( {
#                     'frozen' => 1,
#                     'name' => '__ANON__',
#                     'type_coercion_map' => [],
#                     'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'},
#                     'display_name' => 'to_LaxNum',
#                     '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'compiled_type_constraint'}
#                   }, 'Type::Coercion' ),
#                   'name' => 'LaxNum',
#                   'library' => 'Types::Standard',
#                   'display_name' => 'LaxNum',
#                   '_overload_coderef' => sub { "DUMMY" },
#                   'deprecated' => '',
#                   '_overrides_assert_return' => '',
#                   'inlined' => sub { "DUMMY" },
#                   'constraint' => sub { "DUMMY" },
#                   'definition_context' => {
#                     'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                     'line' => 300,
#                     'package' => 'Types::Standard'
#                   },
#                   'uniq' => 10
#                 }, 'Type::Tiny' ),
#                 'coercion' => bless( {
#                   'frozen' => 1,
#                   'name' => '__ANON__',
#                   'type_coercion_map' => [],
#                   'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'},
#                   'display_name' => 'to_Num',
#                   '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'compiled_type_constraint'}
#                 }, 'Type::Coercion' ),
#                 'name' => 'Num',
#                 'library' => 'Types::Standard',
#                 'display_name' => 'Num',
#                 '_overload_coderef' => sub { "DUMMY" },
#                 'deprecated' => '',
#                 '_overrides_assert_return' => '',
#                 'definition_context' => {
#                   'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                   'line' => 335,
#                   'package' => 'Types::Standard'
#                 },
#                 'constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'constraint'},
#                 'uniq' => 12
#               }, 'Type::Tiny' ),
#               'coercion' => bless( {
#                 'frozen' => 1,
#                 'name' => '__ANON__',
#                 'type_coercion_map' => [],
#                 'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'},
#                 'display_name' => 'to_Int',
#                 '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'compiled_type_constraint'}
#               }, 'Type::Coercion' ),
#               'name' => 'Int',
#               'library' => 'Types::Standard',
#               'display_name' => 'Int',
#               '_is_core' => 1,
#               '_overload_coderef' => sub { "DUMMY" },
#               'deprecated' => '',
#               '_overrides_assert_return' => '',
#               'inlined' => sub { "DUMMY" },
#               'constraint' => sub { "DUMMY" },
#               'definition_context' => {
#                 'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                 'line' => 352,
#                 'package' => 'Types::Standard'
#               },
#               'uniq' => 13
#             }, 'Type::Tiny' )
#           }
#         ]
#       },
#       'filename' => 't/41_type_tiny_verbose.t',
#       'candidate_name' => 'main::my_multi::second',
#       'linenum' => 16,
#       'args' => $multisub->{'impls'}[0]{'sig'}{'parms'},
#       'code' => sub { "DUMMY" }
#     },
#     {
#       'sig' => {
#         'seen' => '',
#         'parms' => [
#           {
#             'named' => '',
#             'name' => '$foo',
#             'reqd' => 1,
#             'type' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}
#           }
#         ]
#       },
#       'filename' => 't/41_type_tiny_verbose.t',
#       'candidate_name' => 'main::my_multi::first',
#       'linenum' => 20,
#       'args' => $multisub->{'impls'}[1]{'sig'}{'parms'},
#       'code' => sub { "DUMMY" }
#     }
#   ],
#   'used_by' => 'main',
#   'subname' => 'my_multi',
#   'possible_params' => {
#     '$foo' => 1
#   },
#   'defined_in' => 'main::my_multi'
# };
#  $inner_code = '#line 130 "C:\\strawberry\\cpan\\build\\Sub-Multi-Tiny-0.000013-0\\blib\\lib/Sub/Multi/Tiny/Dispatcher/TypeParams.pm"
#             # Find the candidate
#             @_ = $data[0]->(@_);      # $checker.  Dies on error.
#                 # NOTE: this change can\'t be `local`ized because `goto`
#                 # undoes the `local` - see #8
#             $candidate = $data[1]->[${^_TYPE_PARAMS_MULTISIG}];   # impls
#             $copier = $data[2]->[${^_TYPE_PARAMS_MULTISIG}];      # copiers
# 
# ';
#  $data = sub { "DUMMY" };
#  $VAR4 = [
#   $multisub->{'impls'}[0]{'code'},
#   $multisub->{'impls'}[1]{'code'}
# ];
#  $VAR5 = [
#   sub { "DUMMY" },
#   sub { "DUMMY" }
# ]; (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm:200)
# Sub::Multi::Tiny::Dispatcher::TypeParams dispatcher for main::my_multi():
# #line 204 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#         use strict;
#         use warnings;
#         sub {
#             # Find the candidate
#             my ($candidate, $copier);
# 
# #line 130 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Dispatcher/TypeParams.pm"
#             # Find the candidate
#             @_ = $data[0]->(@_);      # $checker.  Dies on error.
#                 # NOTE: this change can't be `local`ized because `goto`
#                 # undoes the `local` - see #8
#             $candidate = $data[1]->[${^_TYPE_PARAMS_MULTISIG}];   # impls
#             $copier = $data[2]->[${^_TYPE_PARAMS_MULTISIG}];      # copiers
# 
# 
# 
#             # Save the present values of the parameters
# 
# #line 219 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
# my $saved_foo = $main::my_multi::foo;
# 
# #line 225 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#             # Create the guard
#             my $guard = Guard::guard {
# 
# #line 221 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
# $main::my_multi::foo = $saved_foo;
# 
# 
# 
#             }; #End of guard
# 
# #line 234 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
# 
#             # Copy the parameters into the variables the candidate
#             # will access them from
#             &$copier;   # $copier gets @_ automatically
# 
#             # Pass the guard so the parameters will be reset once \$candidate
#             # finishes running.
#             @_ = ($guard);
# 
#             # Invoke the selected candidate
#             goto &$candidate;
#         } #dispatcher
# 
 (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm:248)
# Positional copier invocation 1:
# $copier_args = [
#   'world'
# ];
# After positional copier invocation 1:
# $main::my_multi::foo = world
# Positional copier invocation 2:
# $copier_args = [
#   0
# ];
# After positional copier invocation 2:
# $main::my_multi::foo = 0
# Positional copier invocation 3:
# $copier_args = [
#   42
# ];
# After positional copier invocation 3:
# $main::my_multi::foo = 42
t/41_type_tiny_verbose.t ... ok
# ########################################
# t/42_pos_and_named.t
# Target main::my_multi package Sub::Multi::Tiny (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:144)
# main::my_multi using dispatcher Sub::Multi::Tiny::Dispatcher::TypeParams (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:180)
# Making main::my_multi() (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:184)
# Making main::my_multi attr M (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:202)
# M code:
# #line 231 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm"
# package main::my_multi;
# 
# #line 237 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm"
# use Attribute::Handlers;
# use Sub::Multi::Tiny::Util qw(_hlog);
# ##use Data::Dumper;
# 
# sub M :ATTR(CODE,RAWDATA) {
#     _hlog { require Data::Dumper;
#             'In ', __PACKAGE__, "::M: \n",
#             Data::Dumper->Dump([\@_], ['attr_args']) } 2;
# 
#     my ($package, $symbol, $referent, $attr, $data, $phase,
#         $filename, $linenum) = @_;
#     my $funcname = "$package\::" . *{$symbol}{NAME};
# 
#     _hlog {     # Code from Attribute::Handlers, license perl_5
#         ref($referent),
#         $funcname,
#         "($referent)", "was just declared",
#         "and ascribed the ${attr} attribute",
#         "with data ($data)",
#         "in phase $phase",
#         "in file $filename at line $linenum"
#     } 2;
# 
# #line 264 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm"
#     die 'Dispatchers already created - please file a bug report'
#         if Sub::Multi::Tiny::_dispatchers_created();
# 
#     my $multi_def = $_multisubs{'main::my_multi'};
# 
# #line 272 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm"
#     my $hrSig = Sub::Multi::Tiny::_parse_arglist($data, $funcname);
#     Sub::Multi::Tiny::_check_and_inflate_sig($hrSig, $multi_def,
#         $funcname, $package, $filename, $linenum);
# 
# #line 278 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm"
# 
# #line 282 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm"
#     my $info = {
#         code => $referent,
#         args => $hrSig->{parms},    # TODO remove eventually
#         sig => $hrSig,
# 
#         # For error messages
#         filename => $filename,
#         linenum => $linenum,
#         candidate_name => $funcname
#     };
#     push @{$multi_def->{impls}}, $info;
# 
# } #M
# 
 (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:297)
# Making main::my_multi::my_multi stub (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:212)
# In  main::my_multi ::M: 
#  $attr_args = []; (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:244)
# CODE main::my_multi::just_int (CODE(0x2985f00)) was just declared and ascribed the M attribute with data (Int $answer) in phase CHECK in file t/42_pos_and_named.t at line 18 (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:258)
# Parsing args for main::my_multi::just_int: Int $answer (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:221)
# In main::my_multi evaluating type 'Int' (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:322)
# In  main::my_multi ::M: 
#  $attr_args = []; (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:244)
# CODE main::my_multi::with_dict (CODE(0x2a93578)) was just declared and ascribed the M attribute with data (Int $answer,
#                     { slurpy Dict[
#                         foo => Int,
#                         bar => Optional[Int],
#                         baz => Optional[Int],
#                       ]} $dict) in phase CHECK in file t/42_pos_and_named.t at line 29 (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:258)
# Parsing args for main::my_multi::with_dict: Int $answer,
#                     { slurpy Dict[
#                         foo => Int,
#                         bar => Optional[Int],
#                         baz => Optional[Int],
#                       ]} $dict (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:221)
# In main::my_multi evaluating type 'Int' (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:322)
# In main::my_multi evaluating type '{ slurpy Dict[
#                         foo => Int,
#                         bar => Optional[Int],
#                         baz => Optional[Int],
#                       ]}' (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:322)
# Sub::Multi::Tiny in INIT block (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:96)
# Making Type::Params dispatcher for:  $multisub = {
#   'impls' => [
#     {
#       'sig' => {
#         'seen' => '',
#         'parms' => [
#           {
#             'named' => '',
#             'name' => '$answer',
#             'reqd' => 1,
#             'type' => bless( {
#               'compiled_type_constraint' => sub { "DUMMY" },
#               'type_default' => sub { "DUMMY" },
#               'parent' => bless( {
#                 'compiled_type_constraint' => sub { "DUMMY" },
#                 'parent' => bless( {
#                   'compiled_type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'compiled_type_constraint'},
#                   'type_default' => sub { "DUMMY" },
#                   'parent' => bless( {
#                     'sorter' => sub { "DUMMY" },
#                     'coercion' => bless( {
#                       'frozen' => 1,
#                       'name' => '__ANON__',
#                       'type_coercion_map' => [],
#                       'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'},
#                       'display_name' => 'to_Str',
#                       '_compiled_type_constraint_check' => sub { "DUMMY" }
#                     }, 'Type::Coercion' ),
#                     'library' => 'Types::Standard',
#                     'inlined' => sub { "DUMMY" },
#                     'constraint' => sub { "DUMMY" },
#                     'type_default' => sub { "DUMMY" },
#                     'compiled_type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'coercion'}{'_compiled_type_constraint_check'},
#                     'parent' => bless( {
#                       'compiled_type_constraint' => sub { "DUMMY" },
#                       'parent' => bless( {
#                         'compiled_type_constraint' => sub { "DUMMY" },
#                         'parent' => bless( {
#                           'compiled_type_constraint' => sub { "DUMMY" },
#                           'parent' => bless( {
#                             'compiled_type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'},
#                             'type_default' => sub { "DUMMY" },
#                             'coercion' => bless( {
#                               'frozen' => 1,
#                               'name' => '__ANON__',
#                               'type_coercion_map' => [],
#                               'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                               'display_name' => 'to_Any',
#                               '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                             }, 'Type::Coercion' ),
#                             'name' => 'Any',
#                             'library' => 'Types::Standard',
#                             'display_name' => 'Any',
#                             '_is_core' => 1,
#                             'complement_name' => 'None',
#                             '_overload_coderef' => sub { "DUMMY" },
#                             'deprecated' => '',
#                             '_overrides_assert_return' => '',
#                             'constraint' => sub { "DUMMY" },
#                             'inlined' => sub { "DUMMY" },
#                             'definition_context' => {
#                               'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                               'line' => 211,
#                               'package' => 'Types::Standard'
#                             },
#                             'uniq' => 1
#                           }, 'Type::Tiny' ),
#                           'coercion' => bless( {
#                             'frozen' => 1,
#                             'name' => '__ANON__',
#                             'type_coercion_map' => [],
#                             'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                             'display_name' => 'to_Item',
#                             '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                           }, 'Type::Coercion' ),
#                           'name' => 'Item',
#                           'library' => 'Types::Standard',
#                           'display_name' => 'Item',
#                           '_is_core' => 1,
#                           '_overload_coderef' => sub { "DUMMY" },
#                           'deprecated' => '',
#                           '_overrides_assert_return' => '',
#                           'constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'constraint'},
#                           'inlined' => sub { "DUMMY" },
#                           'definition_context' => {
#                             'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                             'line' => 217,
#                             'package' => 'Types::Standard'
#                           },
#                           'uniq' => 2
#                         }, 'Type::Tiny' ),
#                         'coercion' => bless( {
#                           'frozen' => 1,
#                           'name' => '__ANON__',
#                           'type_coercion_map' => [],
#                           'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                           'display_name' => 'to_Defined',
#                           '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                         }, 'Type::Coercion' ),
#                         'name' => 'Defined',
#                         'library' => 'Types::Standard',
#                         'display_name' => 'Defined',
#                         '_is_core' => 1,
#                         '_overload_coderef' => sub { "DUMMY" },
#                         'deprecated' => '',
#                         '_overrides_assert_return' => '',
#                         'complementary_type' => bless( {
#                           'coercion' => bless( {
#                             'frozen' => 1,
#                             'name' => '__ANON__',
#                             'type_coercion_map' => [],
#                             'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'complementary_type'},
#                             'display_name' => 'to_Undef',
#                             '_compiled_type_constraint_check' => sub { "DUMMY" }
#                           }, 'Type::Coercion' ),
#                           'library' => 'Types::Standard',
#                           'complementary_type' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                           'inlined' => sub { "DUMMY" },
#                           'constraint' => sub { "DUMMY" },
#                           'type_default' => sub { "DUMMY" },
#                           'compiled_type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'complementary_type'}{'coercion'}{'_compiled_type_constraint_check'},
#                           'parent' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                           'name' => 'Undef',
#                           '_is_core' => 1,
#                           'display_name' => 'Undef',
#                           '_overload_coderef' => sub { "DUMMY" },
#                           'deprecated' => '',
#                           '_overrides_assert_return' => '',
#                           'definition_context' => {
#                             'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                             'line' => 245,
#                             'package' => 'Types::Standard'
#                           },
#                           'uniq' => 6
#                         }, 'Type::Tiny' ),
#                         'inlined' => sub { "DUMMY" },
#                         'constraint' => sub { "DUMMY" },
#                         'definition_context' => {
#                           'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                           'line' => 253,
#                           'package' => 'Types::Standard'
#                         },
#                         'uniq' => 7
#                       }, 'Type::Tiny' ),
#                       'coercion' => bless( {
#                         'frozen' => 1,
#                         'name' => '__ANON__',
#                         'type_coercion_map' => [],
#                         'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'},
#                         'display_name' => 'to_Value',
#                         '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                       }, 'Type::Coercion' ),
#                       'name' => 'Value',
#                       'library' => 'Types::Standard',
#                       'display_name' => 'Value',
#                       '_is_core' => 1,
#                       '_overload_coderef' => sub { "DUMMY" },
#                       'deprecated' => '',
#                       '_overrides_assert_return' => '',
#                       'inlined' => sub { "DUMMY" },
#                       'constraint' => sub { "DUMMY" },
#                       'definition_context' => {
#                         'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                         'line' => 267,
#                         'package' => 'Types::Standard'
#                       },
#                       'uniq' => 8
#                     }, 'Type::Tiny' ),
#                     'name' => 'Str',
#                     '_is_core' => 1,
#                     'display_name' => 'Str',
#                     '_overload_coderef' => sub { "DUMMY" },
#                     'deprecated' => '',
#                     '_overrides_assert_return' => '',
#                     'definition_context' => {
#                       'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                       'line' => 282,
#                       'package' => 'Types::Standard'
#                     },
#                     'uniq' => 9
#                   }, 'Type::Tiny' ),
#                   'sorter' => sub { "DUMMY" },
#                   'coercion' => bless( {
#                     'frozen' => 1,
#                     'name' => '__ANON__',
#                     'type_coercion_map' => [],
#                     'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'},
#                     'display_name' => 'to_LaxNum',
#                     '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'compiled_type_constraint'}
#                   }, 'Type::Coercion' ),
#                   'name' => 'LaxNum',
#                   'library' => 'Types::Standard',
#                   'display_name' => 'LaxNum',
#                   '_overload_coderef' => sub { "DUMMY" },
#                   'deprecated' => '',
#                   '_overrides_assert_return' => '',
#                   'inlined' => sub { "DUMMY" },
#                   'constraint' => sub { "DUMMY" },
#                   'definition_context' => {
#                     'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                     'line' => 300,
#                     'package' => 'Types::Standard'
#                   },
#                   'uniq' => 10
#                 }, 'Type::Tiny' ),
#                 'coercion' => bless( {
#                   'frozen' => 1,
#                   'name' => '__ANON__',
#                   'type_coercion_map' => [],
#                   'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'},
#                   'display_name' => 'to_Num',
#                   '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'compiled_type_constraint'}
#                 }, 'Type::Coercion' ),
#                 'name' => 'Num',
#                 'library' => 'Types::Standard',
#                 'display_name' => 'Num',
#                 '_overload_coderef' => sub { "DUMMY" },
#                 'deprecated' => '',
#                 '_overrides_assert_return' => '',
#                 'definition_context' => {
#                   'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                   'line' => 335,
#                   'package' => 'Types::Standard'
#                 },
#                 'constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'constraint'},
#                 'uniq' => 12
#               }, 'Type::Tiny' ),
#               'coercion' => bless( {
#                 'frozen' => 1,
#                 'name' => '__ANON__',
#                 'type_coercion_map' => [],
#                 'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'},
#                 'display_name' => 'to_Int',
#                 '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'compiled_type_constraint'}
#               }, 'Type::Coercion' ),
#               'name' => 'Int',
#               'library' => 'Types::Standard',
#               'display_name' => 'Int',
#               '_is_core' => 1,
#               '_overload_coderef' => sub { "DUMMY" },
#               'deprecated' => '',
#               '_overrides_assert_return' => '',
#               'inlined' => sub { "DUMMY" },
#               'constraint' => sub { "DUMMY" },
#               'definition_context' => {
#                 'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                 'line' => 352,
#                 'package' => 'Types::Standard'
#               },
#               'uniq' => 13
#             }, 'Type::Tiny' )
#           }
#         ]
#       },
#       'filename' => 't/42_pos_and_named.t',
#       'candidate_name' => 'main::my_multi::just_int',
#       'linenum' => 18,
#       'args' => $multisub->{'impls'}[0]{'sig'}{'parms'},
#       'code' => sub { "DUMMY" }
#     },
#     {
#       'sig' => {
#         'seen' => '',
#         'parms' => [
#           {
#             'named' => '',
#             'name' => '$answer',
#             'reqd' => 1,
#             'type' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}
#           },
#           {
#             'named' => '',
#             'name' => '$dict',
#             'reqd' => 1,
#             'type' => bless( {
#               'compiled_type_constraint' => sub { "DUMMY" },
#               'type_default' => undef,
#               'parent' => bless( {
#                 'deep_explanation' => sub { "DUMMY" },
#                 'slurpy' => 1,
#                 'coercion' => bless( {
#                   'frozen' => 1,
#                   'name' => '__ANON__',
#                   'type_coercion_map' => [],
#                   'type_constraint' => $multisub->{'impls'}[1]{'sig'}{'parms'}[1]{'type'}{'parent'},
#                   'display_name' => 'to_Slurpy',
#                   '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                 }, 'Type::Coercion' ),
#                 'library' => 'Types::Standard',
#                 'name_generator' => sub { "DUMMY" },
#                 'constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'constraint'},
#                 'compiled_type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'},
#                 'parent' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                 'my_methods' => {
#                   'slurp_into' => sub { "DUMMY" },
#                   'unslurpy' => sub { "DUMMY" }
#                 },
#                 'constraint_generator' => sub { "DUMMY" },
#                 'name' => 'Slurpy',
#                 'display_name' => 'Slurpy',
#                 '_overload_coderef' => sub { "DUMMY" },
#                 'deprecated' => '',
#                 '_overrides_assert_return' => '',
#                 'definition_context' => {
#                   'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                   'line' => 771,
#                   'package' => 'Types::Standard'
#                 },
#                 'uniq' => 28
#               }, 'Type::Tiny' ),
#               'slurpy' => 1,
#               'coercion' => bless( {
#                 'frozen' => 1,
#                 'name' => '__ANON__',
#                 'type_constraint' => $multisub->{'impls'}[1]{'sig'}{'parms'}[1]{'type'},
#                 '_compiled_type_constraint_check' => $multisub->{'impls'}[1]{'sig'}{'parms'}[1]{'type'}{'compiled_type_constraint'}
#               }, 'Type::Coercion' ),
#               'name' => '__ANON__',
#               'display_name' => 'Slurpy[Dict[bar=>Optional[Int],baz=>Optional[Int],foo=>Int]]',
#               'parameters' => [
#                 bless( {
#                   'compiled_type_constraint' => sub { "DUMMY" },
#                   'parent' => bless( {
#                     'deep_explanation' => sub { "DUMMY" },
#                     'coercion' => bless( {
#                       'frozen' => 1,
#                       'name' => '__ANON__',
#                       'type_coercion_map' => [],
#                       'type_constraint' => $multisub->{'impls'}[1]{'sig'}{'parms'}[1]{'type'}{'parameters'}[0]{'parent'},
#                       'display_name' => 'to_Dict',
#                       '_compiled_type_constraint_check' => sub { "DUMMY" }
#                     }, 'Type::Coercion' ),
#                     'library' => 'Types::Standard',
#                     'name_generator' => sub { "DUMMY" },
#                     'constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'constraint'},
#                     'coercion_generator' => sub { "DUMMY" },
#                     'compiled_type_constraint' => $multisub->{'impls'}[1]{'sig'}{'parms'}[1]{'type'}{'parameters'}[0]{'parent'}{'coercion'}{'_compiled_type_constraint_check'},
#                     'parent' => bless( {
#                       'deep_explanation' => bless( [
#                         'HashRef',
#                         'deep_explanation'
#                       ], 'Types::Standard::LazyLoad' ),
#                       'coercion' => bless( {
#                         'frozen' => 1,
#                         'name' => '__ANON__',
#                         'type_coercion_map' => [],
#                         'type_constraint' => $multisub->{'impls'}[1]{'sig'}{'parms'}[1]{'type'}{'parameters'}[0]{'parent'}{'parent'},
#                         'display_name' => 'to_HashRef',
#                         '_compiled_type_constraint_check' => $multisub->{'impls'}[1]{'sig'}{'parms'}[1]{'type'}{'parameters'}[0]{'parent'}{'coercion'}{'_compiled_type_constraint_check'}
#                       }, 'Type::Coercion' ),
#                       'library' => 'Types::Standard',
#                       'inlined' => sub { "DUMMY" },
#                       'constraint' => sub { "DUMMY" },
#                       'coercion_generator' => bless( [
#                         'HashRef',
#                         'coercion_generator'
#                       ], 'Types::Standard::LazyLoad' ),
#                       'compiled_type_constraint' => $multisub->{'impls'}[1]{'sig'}{'parms'}[1]{'type'}{'parameters'}[0]{'parent'}{'coercion'}{'_compiled_type_constraint_check'},
#                       'type_default' => sub { "DUMMY" },
#                       'parent' => bless( {
#                         'deep_explanation' => sub { "DUMMY" },
#                         'coercion' => bless( {
#                           'frozen' => 1,
#                           'name' => '__ANON__',
#                           'type_coercion_map' => [],
#                           'type_constraint' => $multisub->{'impls'}[1]{'sig'}{'parms'}[1]{'type'}{'parameters'}[0]{'parent'}{'parent'}{'parent'},
#                           'display_name' => 'to_Ref',
#                           '_compiled_type_constraint_check' => sub { "DUMMY" }
#                         }, 'Type::Coercion' ),
#                         'library' => 'Types::Standard',
#                         'constraint' => sub { "DUMMY" },
#                         'inlined' => sub { "DUMMY" },
#                         'compiled_type_constraint' => $multisub->{'impls'}[1]{'sig'}{'parms'}[1]{'type'}{'parameters'}[0]{'parent'}{'parent'}{'parent'}{'coercion'}{'_compiled_type_constraint_check'},
#                         'parent' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                         'constraint_generator' => sub { "DUMMY" },
#                         'name' => 'Ref',
#                         '_is_core' => 1,
#                         'display_name' => 'Ref',
#                         '_overload_coderef' => sub { "DUMMY" },
#                         'deprecated' => '',
#                         '_overrides_assert_return' => '',
#                         'definition_context' => {
#                           'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                           'line' => 428,
#                           'package' => 'Types::Standard'
#                         },
#                         'inline_generator' => sub { "DUMMY" },
#                         'uniq' => 16
#                       }, 'Type::Tiny' ),
#                       'my_methods' => {
#                         'hashref_allows_value' => bless( [
#                           'HashRef',
#                           'hashref_allows_value'
#                         ], 'Types::Standard::LazyLoad' ),
#                         'hashref_allows_key' => bless( [
#                           'HashRef',
#                           'hashref_allows_key'
#                         ], 'Types::Standard::LazyLoad' )
#                       },
#                       'constraint_generator' => bless( [
#                         'HashRef',
#                         'constraint_generator'
#                       ], 'Types::Standard::LazyLoad' ),
#                       'name' => 'HashRef',
#                       'display_name' => 'HashRef',
#                       '_is_core' => 1,
#                       '_overload_coderef' => sub { "DUMMY" },
#                       'type_default_generator' => sub { "DUMMY" },
#                       'deprecated' => '',
#                       '_overrides_assert_return' => '',
#                       'definition_context' => {
#                         'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                         'line' => 534,
#                         'package' => 'Types::Standard'
#                       },
#                       'inline_generator' => bless( [
#                         'HashRef',
#                         'inline_generator'
#                       ], 'Types::Standard::LazyLoad' ),
#                       'uniq' => 22
#                     }, 'Type::Tiny' ),
#                     'my_methods' => {
#                       'hashref_allows_value' => sub { "DUMMY" },
#                       'hashref_allows_key' => sub { "DUMMY" },
#                       'dict_is_slurpy' => sub { "DUMMY" }
#                     },
#                     'constraint_generator' => sub { "DUMMY" },
#                     'name' => 'Dict',
#                     'display_name' => 'Dict',
#                     '_overload_coderef' => sub { "DUMMY" },
#                     'deprecated' => '',
#                     '_overrides_assert_return' => '',
#                     'definition_context' => {
#                       'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                       'line' => 828,
#                       'package' => 'Types::Standard'
#                     },
#                     'inline_generator' => sub { "DUMMY" },
#                     'uniq' => 31
#                   }, 'Type::Tiny' ),
#                   'coercion' => bless( {
#                     'frozen' => 1,
#                     'name' => '__ANON__',
#                     'type_coercion_map' => [],
#                     'type_constraint' => $multisub->{'impls'}[1]{'sig'}{'parms'}[1]{'type'}{'parameters'}[0],
#                     '_compiled_type_constraint_check' => $multisub->{'impls'}[1]{'sig'}{'parms'}[1]{'type'}{'parameters'}[0]{'compiled_type_constraint'}
#                   }, 'Type::Coercion' ),
#                   'name' => '__ANON__',
#                   'display_name' => 'Dict[bar=>Optional[Int],baz=>Optional[Int],foo=>Int]',
#                   'parameters' => [
#                     'foo',
#                     $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'},
#                     'bar',
#                     bless( {
#                       'compiled_type_constraint' => sub { "DUMMY" },
#                       'type_default' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'type_default'},
#                       'parent' => bless( {
#                         'deep_explanation' => sub { "DUMMY" },
#                         'coercion' => bless( {
#                           'frozen' => 1,
#                           'name' => '__ANON__',
#                           'type_coercion_map' => [],
#                           'type_constraint' => $multisub->{'impls'}[1]{'sig'}{'parms'}[1]{'type'}{'parameters'}[0]{'parameters'}[3]{'parent'},
#                           'display_name' => 'to_Optional',
#                           '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                         }, 'Type::Coercion' ),
#                         'library' => 'Types::Standard',
#                         'name_generator' => $multisub->{'impls'}[1]{'sig'}{'parms'}[1]{'type'}{'parent'}{'name_generator'},
#                         'constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'constraint'},
#                         'coercion_generator' => sub { "DUMMY" },
#                         'compiled_type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'},
#                         'parent' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                         'constraint_generator' => sub { "DUMMY" },
#                         'name' => 'Optional',
#                         'display_name' => 'Optional',
#                         '_overload_coderef' => sub { "DUMMY" },
#                         'type_default_generator' => sub { "DUMMY" },
#                         'deprecated' => '',
#                         '_overrides_assert_return' => '',
#                         'definition_context' => {
#                           'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                           'line' => 707,
#                           'package' => 'Types::Standard'
#                         },
#                         'inline_generator' => sub { "DUMMY" },
#                         'uniq' => 27
#                       }, 'Type::Tiny' ),
#                       'coercion' => bless( {
#                         'frozen' => 1,
#                         'name' => '__ANON__',
#                         'type_coercion_map' => [],
#                         'type_constraint' => $multisub->{'impls'}[1]{'sig'}{'parms'}[1]{'type'}{'parameters'}[0]{'parameters'}[3],
#                         '_compiled_type_constraint_check' => $multisub->{'impls'}[1]{'sig'}{'parms'}[1]{'type'}{'parameters'}[0]{'parameters'}[3]{'compiled_type_constraint'}
#                       }, 'Type::Coercion' ),
#                       'name' => '__ANON__',
#                       'display_name' => 'Optional[Int]',
#                       'parameters' => [
#                         $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}
#                       ],
#                       'deprecated' => '',
#                       '_build_coercion' => sub { "DUMMY" },
#                       'inlined' => sub { "DUMMY" },
#                       'constraint' => sub { "DUMMY" },
#                       'definition_context' => {
#                         'file' => 'C:\\strawberry\\cpan\\build\\Sub-Multi-Tiny-0.000013-0\\blib\\lib/Sub/Multi/Tiny.pm',
#                         'line' => 326,
#                         'package' => 'main::my_multi'
#                       },
#                       'uniq' => 41
#                     }, 'Type::Tiny' ),
#                     'baz',
#                     $multisub->{'impls'}[1]{'sig'}{'parms'}[1]{'type'}{'parameters'}[0]{'parameters'}[3]
#                   ],
#                   'deprecated' => '',
#                   '_build_coercion' => sub { "DUMMY" },
#                   'inlined' => sub { "DUMMY" },
#                   'constraint' => sub { "DUMMY" },
#                   'definition_context' => {
#                     'file' => 'C:\\strawberry\\cpan\\build\\Sub-Multi-Tiny-0.000013-0\\blib\\lib/Sub/Multi/Tiny.pm',
#                     'line' => 326,
#                     'package' => 'main::my_multi'
#                   },
#                   'uniq' => 42
#                 }, 'Type::Tiny' )
#               ],
#               'deprecated' => '',
#               '_build_coercion' => sub { "DUMMY" },
#               'definition_context' => {
#                 'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                 'line' => 736,
#                 'package' => 'Types::Standard'
#               },
#               'constraint' => sub { "DUMMY" },
#               'inlined' => sub { "DUMMY" },
#               'uniq' => 43
#             }, 'Type::Tiny' )
#           }
#         ]
#       },
#       'filename' => 't/42_pos_and_named.t',
#       'candidate_name' => 'main::my_multi::with_dict',
#       'linenum' => 29,
#       'args' => $multisub->{'impls'}[1]{'sig'}{'parms'},
#       'code' => sub { "DUMMY" }
#     }
#   ],
#   'used_by' => 'main',
#   'subname' => 'my_multi',
#   'possible_params' => {
#     '$answer' => 1,
#     '$dict' => 1
#   },
#   'defined_in' => 'main::my_multi'
# }; (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Dispatcher/TypeParams.pm:82)
# $mpc_defined_in = 'main::my_multi';
#  $mpc_impl = {
#   'sig' => {
#     'seen' => '',
#     'parms' => [
#       {
#         'named' => '',
#         'name' => '$answer',
#         'reqd' => 1,
#         'type' => bless( {
#           'compiled_type_constraint' => sub { "DUMMY" },
#           'type_default' => sub { "DUMMY" },
#           'parent' => bless( {
#             'compiled_type_constraint' => sub { "DUMMY" },
#             'parent' => bless( {
#               'compiled_type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'compiled_type_constraint'},
#               'type_default' => sub { "DUMMY" },
#               'parent' => bless( {
#                 'sorter' => sub { "DUMMY" },
#                 'coercion' => bless( {
#                   'frozen' => 1,
#                   'name' => '__ANON__',
#                   'type_coercion_map' => [],
#                   'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'},
#                   'display_name' => 'to_Str',
#                   '_compiled_type_constraint_check' => sub { "DUMMY" }
#                 }, 'Type::Coercion' ),
#                 'library' => 'Types::Standard',
#                 'inlined' => sub { "DUMMY" },
#                 'constraint' => sub { "DUMMY" },
#                 'type_default' => sub { "DUMMY" },
#                 'compiled_type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'coercion'}{'_compiled_type_constraint_check'},
#                 'parent' => bless( {
#                   'compiled_type_constraint' => sub { "DUMMY" },
#                   'parent' => bless( {
#                     'compiled_type_constraint' => sub { "DUMMY" },
#                     'parent' => bless( {
#                       'compiled_type_constraint' => sub { "DUMMY" },
#                       'parent' => bless( {
#                         'compiled_type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'},
#                         'type_default' => sub { "DUMMY" },
#                         'coercion' => bless( {
#                           'frozen' => 1,
#                           'name' => '__ANON__',
#                           'type_coercion_map' => [],
#                           'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                           'display_name' => 'to_Any',
#                           '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                         }, 'Type::Coercion' ),
#                         'name' => 'Any',
#                         'library' => 'Types::Standard',
#                         'display_name' => 'Any',
#                         '_is_core' => 1,
#                         'complement_name' => 'None',
#                         '_overload_coderef' => sub { "DUMMY" },
#                         'deprecated' => '',
#                         '_overrides_assert_return' => '',
#                         'constraint' => sub { "DUMMY" },
#                         'inlined' => sub { "DUMMY" },
#                         'definition_context' => {
#                           'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                           'line' => 211,
#                           'package' => 'Types::Standard'
#                         },
#                         'uniq' => 1
#                       }, 'Type::Tiny' ),
#                       'coercion' => bless( {
#                         'frozen' => 1,
#                         'name' => '__ANON__',
#                         'type_coercion_map' => [],
#                         'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                         'display_name' => 'to_Item',
#                         '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                       }, 'Type::Coercion' ),
#                       'name' => 'Item',
#                       'library' => 'Types::Standard',
#                       'display_name' => 'Item',
#                       '_is_core' => 1,
#                       '_overload_coderef' => sub { "DUMMY" },
#                       'deprecated' => '',
#                       '_overrides_assert_return' => '',
#                       'constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'constraint'},
#                       'inlined' => sub { "DUMMY" },
#                       'definition_context' => {
#                         'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                         'line' => 217,
#                         'package' => 'Types::Standard'
#                       },
#                       'uniq' => 2
#                     }, 'Type::Tiny' ),
#                     'coercion' => bless( {
#                       'frozen' => 1,
#                       'name' => '__ANON__',
#                       'type_coercion_map' => [],
#                       'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                       'display_name' => 'to_Defined',
#                       '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                     }, 'Type::Coercion' ),
#                     'name' => 'Defined',
#                     'library' => 'Types::Standard',
#                     'display_name' => 'Defined',
#                     '_is_core' => 1,
#                     '_overload_coderef' => sub { "DUMMY" },
#                     'deprecated' => '',
#                     '_overrides_assert_return' => '',
#                     'complementary_type' => bless( {
#                       'coercion' => bless( {
#                         'frozen' => 1,
#                         'name' => '__ANON__',
#                         'type_coercion_map' => [],
#                         'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'complementary_type'},
#                         'display_name' => 'to_Undef',
#                         '_compiled_type_constraint_check' => sub { "DUMMY" }
#                       }, 'Type::Coercion' ),
#                       'library' => 'Types::Standard',
#                       'complementary_type' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                       'inlined' => sub { "DUMMY" },
#                       'constraint' => sub { "DUMMY" },
#                       'type_default' => sub { "DUMMY" },
#                       'compiled_type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'complementary_type'}{'coercion'}{'_compiled_type_constraint_check'},
#                       'parent' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                       'name' => 'Undef',
#                       '_is_core' => 1,
#                       'display_name' => 'Undef',
#                       '_overload_coderef' => sub { "DUMMY" },
#                       'deprecated' => '',
#                       '_overrides_assert_return' => '',
#                       'definition_context' => {
#                         'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                         'line' => 245,
#                         'package' => 'Types::Standard'
#                       },
#                       'uniq' => 6
#                     }, 'Type::Tiny' ),
#                     'inlined' => sub { "DUMMY" },
#                     'constraint' => sub { "DUMMY" },
#                     'definition_context' => {
#                       'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                       'line' => 253,
#                       'package' => 'Types::Standard'
#                     },
#                     'uniq' => 7
#                   }, 'Type::Tiny' ),
#                   'coercion' => bless( {
#                     'frozen' => 1,
#                     'name' => '__ANON__',
#                     'type_coercion_map' => [],
#                     'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'},
#                     'display_name' => 'to_Value',
#                     '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                   }, 'Type::Coercion' ),
#                   'name' => 'Value',
#                   'library' => 'Types::Standard',
#                   'display_name' => 'Value',
#                   '_is_core' => 1,
#                   '_overload_coderef' => sub { "DUMMY" },
#                   'deprecated' => '',
#                   '_overrides_assert_return' => '',
#                   'inlined' => sub { "DUMMY" },
#                   'constraint' => sub { "DUMMY" },
#                   'definition_context' => {
#                     'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                     'line' => 267,
#                     'package' => 'Types::Standard'
#                   },
#                   'uniq' => 8
#                 }, 'Type::Tiny' ),
#                 'name' => 'Str',
#                 '_is_core' => 1,
#                 'display_name' => 'Str',
#                 '_overload_coderef' => sub { "DUMMY" },
#                 'deprecated' => '',
#                 '_overrides_assert_return' => '',
#                 'definition_context' => {
#                   'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                   'line' => 282,
#                   'package' => 'Types::Standard'
#                 },
#                 'uniq' => 9
#               }, 'Type::Tiny' ),
#               'sorter' => sub { "DUMMY" },
#               'coercion' => bless( {
#                 'frozen' => 1,
#                 'name' => '__ANON__',
#                 'type_coercion_map' => [],
#                 'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'},
#                 'display_name' => 'to_LaxNum',
#                 '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'compiled_type_constraint'}
#               }, 'Type::Coercion' ),
#               'name' => 'LaxNum',
#               'library' => 'Types::Standard',
#               'display_name' => 'LaxNum',
#               '_overload_coderef' => sub { "DUMMY" },
#               'deprecated' => '',
#               '_overrides_assert_return' => '',
#               'inlined' => sub { "DUMMY" },
#               'constraint' => sub { "DUMMY" },
#               'definition_context' => {
#                 'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                 'line' => 300,
#                 'package' => 'Types::Standard'
#               },
#               'uniq' => 10
#             }, 'Type::Tiny' ),
#             'coercion' => bless( {
#               'frozen' => 1,
#               'name' => '__ANON__',
#               'type_coercion_map' => [],
#               'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'},
#               'display_name' => 'to_Num',
#               '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'compiled_type_constraint'}
#             }, 'Type::Coercion' ),
#             'name' => 'Num',
#             'library' => 'Types::Standard',
#             'display_name' => 'Num',
#             '_overload_coderef' => sub { "DUMMY" },
#             'deprecated' => '',
#             '_overrides_assert_return' => '',
#             'definition_context' => {
#               'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#               'line' => 335,
#               'package' => 'Types::Standard'
#             },
#             'constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'constraint'},
#             'uniq' => 12
#           }, 'Type::Tiny' ),
#           'coercion' => bless( {
#             'frozen' => 1,
#             'name' => '__ANON__',
#             'type_coercion_map' => [],
#             'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'},
#             'display_name' => 'to_Int',
#             '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'compiled_type_constraint'}
#           }, 'Type::Coercion' ),
#           'name' => 'Int',
#           'library' => 'Types::Standard',
#           'display_name' => 'Int',
#           '_is_core' => 1,
#           '_overload_coderef' => sub { "DUMMY" },
#           'deprecated' => '',
#           '_overrides_assert_return' => '',
#           'inlined' => sub { "DUMMY" },
#           'constraint' => sub { "DUMMY" },
#           'definition_context' => {
#             'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#             'line' => 352,
#             'package' => 'Types::Standard'
#           },
#           'uniq' => 13
#         }, 'Type::Tiny' )
#       }
#     ]
#   },
#   'filename' => 't/42_pos_and_named.t',
#   'candidate_name' => 'main::my_multi::just_int',
#   'linenum' => 18,
#   'args' => $mpc_impl->{'sig'}{'parms'},
#   'code' => sub { "DUMMY" }
# }; (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm:273)
# Copier for main::my_multi::just_int():
#  #line 276 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
# use strict;
# use warnings;
# sub {
# 
# #line 283 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#     if( $] lt '5.018' || $VERBOSE > 1) {
#         require Data::Dumper;
#         require Test::More;
#         Test::More::diag(sprintf("Positional copier invocation %d:\n%s",
#             ++$Sub::Multi::Tiny::Util::_positional_copier_invocation_number,
#             Data::Dumper->Dump([\@_],['copier_args'])));
#     }
# 
# #line 293 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#     (
# 
# #line 303 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#         $main::my_multi::answer
# #line 306 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#     ) = @_;
# 
#     if( $] lt '5.018' || $VERBOSE > 1) {
#         Test::More::diag(sprintf("After positional copier invocation %d:",
#             $Sub::Multi::Tiny::Util::_positional_copier_invocation_number));
#         Test::More::diag(join "\n", map {
#             sprintf("%s = %s", $_, eval($_))
#         } @vars);
#     }
# 
# } #copier
 (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm:319)
# $mpc_defined_in = 'main::my_multi';
#  $mpc_impl = {
#   'sig' => {
#     'seen' => '',
#     'parms' => [
#       {
#         'named' => '',
#         'name' => '$answer',
#         'reqd' => 1,
#         'type' => bless( {
#           'compiled_type_constraint' => sub { "DUMMY" },
#           'type_default' => sub { "DUMMY" },
#           'parent' => bless( {
#             'compiled_type_constraint' => sub { "DUMMY" },
#             'parent' => bless( {
#               'compiled_type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'compiled_type_constraint'},
#               'type_default' => sub { "DUMMY" },
#               'parent' => bless( {
#                 'sorter' => sub { "DUMMY" },
#                 'coercion' => bless( {
#                   'frozen' => 1,
#                   'name' => '__ANON__',
#                   'type_coercion_map' => [],
#                   'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'},
#                   'display_name' => 'to_Str',
#                   '_compiled_type_constraint_check' => sub { "DUMMY" }
#                 }, 'Type::Coercion' ),
#                 'library' => 'Types::Standard',
#                 'inlined' => sub { "DUMMY" },
#                 'constraint' => sub { "DUMMY" },
#                 'type_default' => sub { "DUMMY" },
#                 'compiled_type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'coercion'}{'_compiled_type_constraint_check'},
#                 'parent' => bless( {
#                   'compiled_type_constraint' => sub { "DUMMY" },
#                   'parent' => bless( {
#                     'compiled_type_constraint' => sub { "DUMMY" },
#                     'parent' => bless( {
#                       'compiled_type_constraint' => sub { "DUMMY" },
#                       'parent' => bless( {
#                         'compiled_type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'},
#                         'type_default' => sub { "DUMMY" },
#                         'coercion' => bless( {
#                           'frozen' => 1,
#                           'name' => '__ANON__',
#                           'type_coercion_map' => [],
#                           'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                           'display_name' => 'to_Any',
#                           '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                         }, 'Type::Coercion' ),
#                         'name' => 'Any',
#                         'library' => 'Types::Standard',
#                         'display_name' => 'Any',
#                         '_is_core' => 1,
#                         'complement_name' => 'None',
#                         '_overload_coderef' => sub { "DUMMY" },
#                         'deprecated' => '',
#                         '_overrides_assert_return' => '',
#                         'constraint' => sub { "DUMMY" },
#                         'inlined' => sub { "DUMMY" },
#                         'definition_context' => {
#                           'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                           'line' => 211,
#                           'package' => 'Types::Standard'
#                         },
#                         'uniq' => 1
#                       }, 'Type::Tiny' ),
#                       'coercion' => bless( {
#                         'frozen' => 1,
#                         'name' => '__ANON__',
#                         'type_coercion_map' => [],
#                         'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                         'display_name' => 'to_Item',
#                         '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                       }, 'Type::Coercion' ),
#                       'name' => 'Item',
#                       'library' => 'Types::Standard',
#                       'display_name' => 'Item',
#                       '_is_core' => 1,
#                       '_overload_coderef' => sub { "DUMMY" },
#                       'deprecated' => '',
#                       '_overrides_assert_return' => '',
#                       'constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'constraint'},
#                       'inlined' => sub { "DUMMY" },
#                       'definition_context' => {
#                         'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                         'line' => 217,
#                         'package' => 'Types::Standard'
#                       },
#                       'uniq' => 2
#                     }, 'Type::Tiny' ),
#                     'coercion' => bless( {
#                       'frozen' => 1,
#                       'name' => '__ANON__',
#                       'type_coercion_map' => [],
#                       'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                       'display_name' => 'to_Defined',
#                       '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                     }, 'Type::Coercion' ),
#                     'name' => 'Defined',
#                     'library' => 'Types::Standard',
#                     'display_name' => 'Defined',
#                     '_is_core' => 1,
#                     '_overload_coderef' => sub { "DUMMY" },
#                     'deprecated' => '',
#                     '_overrides_assert_return' => '',
#                     'complementary_type' => bless( {
#                       'coercion' => bless( {
#                         'frozen' => 1,
#                         'name' => '__ANON__',
#                         'type_coercion_map' => [],
#                         'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'complementary_type'},
#                         'display_name' => 'to_Undef',
#                         '_compiled_type_constraint_check' => sub { "DUMMY" }
#                       }, 'Type::Coercion' ),
#                       'library' => 'Types::Standard',
#                       'complementary_type' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                       'inlined' => sub { "DUMMY" },
#                       'constraint' => sub { "DUMMY" },
#                       'type_default' => sub { "DUMMY" },
#                       'compiled_type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'complementary_type'}{'coercion'}{'_compiled_type_constraint_check'},
#                       'parent' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                       'name' => 'Undef',
#                       '_is_core' => 1,
#                       'display_name' => 'Undef',
#                       '_overload_coderef' => sub { "DUMMY" },
#                       'deprecated' => '',
#                       '_overrides_assert_return' => '',
#                       'definition_context' => {
#                         'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                         'line' => 245,
#                         'package' => 'Types::Standard'
#                       },
#                       'uniq' => 6
#                     }, 'Type::Tiny' ),
#                     'inlined' => sub { "DUMMY" },
#                     'constraint' => sub { "DUMMY" },
#                     'definition_context' => {
#                       'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                       'line' => 253,
#                       'package' => 'Types::Standard'
#                     },
#                     'uniq' => 7
#                   }, 'Type::Tiny' ),
#                   'coercion' => bless( {
#                     'frozen' => 1,
#                     'name' => '__ANON__',
#                     'type_coercion_map' => [],
#                     'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'},
#                     'display_name' => 'to_Value',
#                     '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                   }, 'Type::Coercion' ),
#                   'name' => 'Value',
#                   'library' => 'Types::Standard',
#                   'display_name' => 'Value',
#                   '_is_core' => 1,
#                   '_overload_coderef' => sub { "DUMMY" },
#                   'deprecated' => '',
#                   '_overrides_assert_return' => '',
#                   'inlined' => sub { "DUMMY" },
#                   'constraint' => sub { "DUMMY" },
#                   'definition_context' => {
#                     'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                     'line' => 267,
#                     'package' => 'Types::Standard'
#                   },
#                   'uniq' => 8
#                 }, 'Type::Tiny' ),
#                 'name' => 'Str',
#                 '_is_core' => 1,
#                 'display_name' => 'Str',
#                 '_overload_coderef' => sub { "DUMMY" },
#                 'deprecated' => '',
#                 '_overrides_assert_return' => '',
#                 'definition_context' => {
#                   'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                   'line' => 282,
#                   'package' => 'Types::Standard'
#                 },
#                 'uniq' => 9
#               }, 'Type::Tiny' ),
#               'sorter' => sub { "DUMMY" },
#               'coercion' => bless( {
#                 'frozen' => 1,
#                 'name' => '__ANON__',
#                 'type_coercion_map' => [],
#                 'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'},
#                 'display_name' => 'to_LaxNum',
#                 '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'compiled_type_constraint'}
#               }, 'Type::Coercion' ),
#               'name' => 'LaxNum',
#               'library' => 'Types::Standard',
#               'display_name' => 'LaxNum',
#               '_overload_coderef' => sub { "DUMMY" },
#               'deprecated' => '',
#               '_overrides_assert_return' => '',
#               'inlined' => sub { "DUMMY" },
#               'constraint' => sub { "DUMMY" },
#               'definition_context' => {
#                 'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                 'line' => 300,
#                 'package' => 'Types::Standard'
#               },
#               'uniq' => 10
#             }, 'Type::Tiny' ),
#             'coercion' => bless( {
#               'frozen' => 1,
#               'name' => '__ANON__',
#               'type_coercion_map' => [],
#               'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'},
#               'display_name' => 'to_Num',
#               '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'compiled_type_constraint'}
#             }, 'Type::Coercion' ),
#             'name' => 'Num',
#             'library' => 'Types::Standard',
#             'display_name' => 'Num',
#             '_overload_coderef' => sub { "DUMMY" },
#             'deprecated' => '',
#             '_overrides_assert_return' => '',
#             'definition_context' => {
#               'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#               'line' => 335,
#               'package' => 'Types::Standard'
#             },
#             'constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'constraint'},
#             'uniq' => 12
#           }, 'Type::Tiny' ),
#           'coercion' => bless( {
#             'frozen' => 1,
#             'name' => '__ANON__',
#             'type_coercion_map' => [],
#             'type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'},
#             'display_name' => 'to_Int',
#             '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'compiled_type_constraint'}
#           }, 'Type::Coercion' ),
#           'name' => 'Int',
#           'library' => 'Types::Standard',
#           'display_name' => 'Int',
#           '_is_core' => 1,
#           '_overload_coderef' => sub { "DUMMY" },
#           'deprecated' => '',
#           '_overrides_assert_return' => '',
#           'inlined' => sub { "DUMMY" },
#           'constraint' => sub { "DUMMY" },
#           'definition_context' => {
#             'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#             'line' => 352,
#             'package' => 'Types::Standard'
#           },
#           'uniq' => 13
#         }, 'Type::Tiny' )
#       },
#       {
#         'named' => '',
#         'name' => '$dict',
#         'reqd' => 1,
#         'type' => bless( {
#           'compiled_type_constraint' => sub { "DUMMY" },
#           'type_default' => undef,
#           'parent' => bless( {
#             'deep_explanation' => sub { "DUMMY" },
#             'slurpy' => 1,
#             'coercion' => bless( {
#               'frozen' => 1,
#               'name' => '__ANON__',
#               'type_coercion_map' => [],
#               'type_constraint' => $mpc_impl->{'sig'}{'parms'}[1]{'type'}{'parent'},
#               'display_name' => 'to_Slurpy',
#               '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#             }, 'Type::Coercion' ),
#             'library' => 'Types::Standard',
#             'name_generator' => sub { "DUMMY" },
#             'constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'constraint'},
#             'compiled_type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'},
#             'parent' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#             'my_methods' => {
#               'slurp_into' => sub { "DUMMY" },
#               'unslurpy' => sub { "DUMMY" }
#             },
#             'constraint_generator' => sub { "DUMMY" },
#             'name' => 'Slurpy',
#             'display_name' => 'Slurpy',
#             '_overload_coderef' => sub { "DUMMY" },
#             'deprecated' => '',
#             '_overrides_assert_return' => '',
#             'definition_context' => {
#               'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#               'line' => 771,
#               'package' => 'Types::Standard'
#             },
#             'uniq' => 28
#           }, 'Type::Tiny' ),
#           'slurpy' => 1,
#           'coercion' => bless( {
#             'frozen' => 1,
#             'name' => '__ANON__',
#             'type_constraint' => $mpc_impl->{'sig'}{'parms'}[1]{'type'},
#             '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[1]{'type'}{'compiled_type_constraint'}
#           }, 'Type::Coercion' ),
#           'name' => '__ANON__',
#           'display_name' => 'Slurpy[Dict[bar=>Optional[Int],baz=>Optional[Int],foo=>Int]]',
#           'parameters' => [
#             bless( {
#               'compiled_type_constraint' => sub { "DUMMY" },
#               'parent' => bless( {
#                 'deep_explanation' => sub { "DUMMY" },
#                 'coercion' => bless( {
#                   'frozen' => 1,
#                   'name' => '__ANON__',
#                   'type_coercion_map' => [],
#                   'type_constraint' => $mpc_impl->{'sig'}{'parms'}[1]{'type'}{'parameters'}[0]{'parent'},
#                   'display_name' => 'to_Dict',
#                   '_compiled_type_constraint_check' => sub { "DUMMY" }
#                 }, 'Type::Coercion' ),
#                 'library' => 'Types::Standard',
#                 'name_generator' => sub { "DUMMY" },
#                 'constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'constraint'},
#                 'coercion_generator' => sub { "DUMMY" },
#                 'compiled_type_constraint' => $mpc_impl->{'sig'}{'parms'}[1]{'type'}{'parameters'}[0]{'parent'}{'coercion'}{'_compiled_type_constraint_check'},
#                 'parent' => bless( {
#                   'deep_explanation' => bless( [
#                     'HashRef',
#                     'deep_explanation'
#                   ], 'Types::Standard::LazyLoad' ),
#                   'coercion' => bless( {
#                     'frozen' => 1,
#                     'name' => '__ANON__',
#                     'type_coercion_map' => [],
#                     'type_constraint' => $mpc_impl->{'sig'}{'parms'}[1]{'type'}{'parameters'}[0]{'parent'}{'parent'},
#                     'display_name' => 'to_HashRef',
#                     '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[1]{'type'}{'parameters'}[0]{'parent'}{'coercion'}{'_compiled_type_constraint_check'}
#                   }, 'Type::Coercion' ),
#                   'library' => 'Types::Standard',
#                   'inlined' => sub { "DUMMY" },
#                   'constraint' => sub { "DUMMY" },
#                   'coercion_generator' => bless( [
#                     'HashRef',
#                     'coercion_generator'
#                   ], 'Types::Standard::LazyLoad' ),
#                   'compiled_type_constraint' => $mpc_impl->{'sig'}{'parms'}[1]{'type'}{'parameters'}[0]{'parent'}{'coercion'}{'_compiled_type_constraint_check'},
#                   'type_default' => sub { "DUMMY" },
#                   'parent' => bless( {
#                     'deep_explanation' => sub { "DUMMY" },
#                     'coercion' => bless( {
#                       'frozen' => 1,
#                       'name' => '__ANON__',
#                       'type_coercion_map' => [],
#                       'type_constraint' => $mpc_impl->{'sig'}{'parms'}[1]{'type'}{'parameters'}[0]{'parent'}{'parent'}{'parent'},
#                       'display_name' => 'to_Ref',
#                       '_compiled_type_constraint_check' => sub { "DUMMY" }
#                     }, 'Type::Coercion' ),
#                     'library' => 'Types::Standard',
#                     'constraint' => sub { "DUMMY" },
#                     'inlined' => sub { "DUMMY" },
#                     'compiled_type_constraint' => $mpc_impl->{'sig'}{'parms'}[1]{'type'}{'parameters'}[0]{'parent'}{'parent'}{'parent'}{'coercion'}{'_compiled_type_constraint_check'},
#                     'parent' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                     'constraint_generator' => sub { "DUMMY" },
#                     'name' => 'Ref',
#                     '_is_core' => 1,
#                     'display_name' => 'Ref',
#                     '_overload_coderef' => sub { "DUMMY" },
#                     'deprecated' => '',
#                     '_overrides_assert_return' => '',
#                     'definition_context' => {
#                       'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                       'line' => 428,
#                       'package' => 'Types::Standard'
#                     },
#                     'inline_generator' => sub { "DUMMY" },
#                     'uniq' => 16
#                   }, 'Type::Tiny' ),
#                   'my_methods' => {
#                     'hashref_allows_value' => bless( [
#                       'HashRef',
#                       'hashref_allows_value'
#                     ], 'Types::Standard::LazyLoad' ),
#                     'hashref_allows_key' => bless( [
#                       'HashRef',
#                       'hashref_allows_key'
#                     ], 'Types::Standard::LazyLoad' )
#                   },
#                   'constraint_generator' => bless( [
#                     'HashRef',
#                     'constraint_generator'
#                   ], 'Types::Standard::LazyLoad' ),
#                   'name' => 'HashRef',
#                   'display_name' => 'HashRef',
#                   '_is_core' => 1,
#                   '_overload_coderef' => sub { "DUMMY" },
#                   'type_default_generator' => sub { "DUMMY" },
#                   'deprecated' => '',
#                   '_overrides_assert_return' => '',
#                   'definition_context' => {
#                     'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                     'line' => 534,
#                     'package' => 'Types::Standard'
#                   },
#                   'inline_generator' => bless( [
#                     'HashRef',
#                     'inline_generator'
#                   ], 'Types::Standard::LazyLoad' ),
#                   'uniq' => 22
#                 }, 'Type::Tiny' ),
#                 'my_methods' => {
#                   'hashref_allows_value' => sub { "DUMMY" },
#                   'hashref_allows_key' => sub { "DUMMY" },
#                   'dict_is_slurpy' => sub { "DUMMY" }
#                 },
#                 'constraint_generator' => sub { "DUMMY" },
#                 'name' => 'Dict',
#                 'display_name' => 'Dict',
#                 '_overload_coderef' => sub { "DUMMY" },
#                 'deprecated' => '',
#                 '_overrides_assert_return' => '',
#                 'definition_context' => {
#                   'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                   'line' => 828,
#                   'package' => 'Types::Standard'
#                 },
#                 'inline_generator' => sub { "DUMMY" },
#                 'uniq' => 31
#               }, 'Type::Tiny' ),
#               'coercion' => bless( {
#                 'frozen' => 1,
#                 'name' => '__ANON__',
#                 'type_coercion_map' => [],
#                 'type_constraint' => $mpc_impl->{'sig'}{'parms'}[1]{'type'}{'parameters'}[0],
#                 '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[1]{'type'}{'parameters'}[0]{'compiled_type_constraint'}
#               }, 'Type::Coercion' ),
#               'name' => '__ANON__',
#               'display_name' => 'Dict[bar=>Optional[Int],baz=>Optional[Int],foo=>Int]',
#               'parameters' => [
#                 'foo',
#                 $mpc_impl->{'sig'}{'parms'}[0]{'type'},
#                 'bar',
#                 bless( {
#                   'compiled_type_constraint' => sub { "DUMMY" },
#                   'type_default' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'type_default'},
#                   'parent' => bless( {
#                     'deep_explanation' => sub { "DUMMY" },
#                     'coercion' => bless( {
#                       'frozen' => 1,
#                       'name' => '__ANON__',
#                       'type_coercion_map' => [],
#                       'type_constraint' => $mpc_impl->{'sig'}{'parms'}[1]{'type'}{'parameters'}[0]{'parameters'}[3]{'parent'},
#                       'display_name' => 'to_Optional',
#                       '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                     }, 'Type::Coercion' ),
#                     'library' => 'Types::Standard',
#                     'name_generator' => $mpc_impl->{'sig'}{'parms'}[1]{'type'}{'parent'}{'name_generator'},
#                     'constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'constraint'},
#                     'coercion_generator' => sub { "DUMMY" },
#                     'compiled_type_constraint' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'},
#                     'parent' => $mpc_impl->{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                     'constraint_generator' => sub { "DUMMY" },
#                     'name' => 'Optional',
#                     'display_name' => 'Optional',
#                     '_overload_coderef' => sub { "DUMMY" },
#                     'type_default_generator' => sub { "DUMMY" },
#                     'deprecated' => '',
#                     '_overrides_assert_return' => '',
#                     'definition_context' => {
#                       'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                       'line' => 707,
#                       'package' => 'Types::Standard'
#                     },
#                     'inline_generator' => sub { "DUMMY" },
#                     'uniq' => 27
#                   }, 'Type::Tiny' ),
#                   'coercion' => bless( {
#                     'frozen' => 1,
#                     'name' => '__ANON__',
#                     'type_coercion_map' => [],
#                     'type_constraint' => $mpc_impl->{'sig'}{'parms'}[1]{'type'}{'parameters'}[0]{'parameters'}[3],
#                     '_compiled_type_constraint_check' => $mpc_impl->{'sig'}{'parms'}[1]{'type'}{'parameters'}[0]{'parameters'}[3]{'compiled_type_constraint'}
#                   }, 'Type::Coercion' ),
#                   'name' => '__ANON__',
#                   'display_name' => 'Optional[Int]',
#                   'parameters' => [
#                     $mpc_impl->{'sig'}{'parms'}[0]{'type'}
#                   ],
#                   'deprecated' => '',
#                   '_build_coercion' => sub { "DUMMY" },
#                   'inlined' => sub { "DUMMY" },
#                   'constraint' => sub { "DUMMY" },
#                   'definition_context' => {
#                     'file' => 'C:\\strawberry\\cpan\\build\\Sub-Multi-Tiny-0.000013-0\\blib\\lib/Sub/Multi/Tiny.pm',
#                     'line' => 326,
#                     'package' => 'main::my_multi'
#                   },
#                   'uniq' => 41
#                 }, 'Type::Tiny' ),
#                 'baz',
#                 $mpc_impl->{'sig'}{'parms'}[1]{'type'}{'parameters'}[0]{'parameters'}[3]
#               ],
#               'deprecated' => '',
#               '_build_coercion' => sub { "DUMMY" },
#               'inlined' => sub { "DUMMY" },
#               'constraint' => sub { "DUMMY" },
#               'definition_context' => {
#                 'file' => 'C:\\strawberry\\cpan\\build\\Sub-Multi-Tiny-0.000013-0\\blib\\lib/Sub/Multi/Tiny.pm',
#                 'line' => 326,
#                 'package' => 'main::my_multi'
#               },
#               'uniq' => 42
#             }, 'Type::Tiny' )
#           ],
#           'deprecated' => '',
#           '_build_coercion' => sub { "DUMMY" },
#           'definition_context' => {
#             'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#             'line' => 736,
#             'package' => 'Types::Standard'
#           },
#           'constraint' => sub { "DUMMY" },
#           'inlined' => sub { "DUMMY" },
#           'uniq' => 43
#         }, 'Type::Tiny' )
#       }
#     ]
#   },
#   'filename' => 't/42_pos_and_named.t',
#   'candidate_name' => 'main::my_multi::with_dict',
#   'linenum' => 29,
#   'args' => $mpc_impl->{'sig'}{'parms'},
#   'code' => sub { "DUMMY" }
# }; (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm:273)
# Copier for main::my_multi::with_dict():
#  #line 276 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
# use strict;
# use warnings;
# sub {
# 
# #line 283 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#     if( $] lt '5.018' || $VERBOSE > 1) {
#         require Data::Dumper;
#         require Test::More;
#         Test::More::diag(sprintf("Positional copier invocation %d:\n%s",
#             ++$Sub::Multi::Tiny::Util::_positional_copier_invocation_number,
#             Data::Dumper->Dump([\@_],['copier_args'])));
#     }
# 
# #line 293 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#     (
# 
# #line 303 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#         $main::my_multi::answer
# ,
# #line 303 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#         $main::my_multi::dict
# #line 306 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#     ) = @_;
# 
#     if( $] lt '5.018' || $VERBOSE > 1) {
#         Test::More::diag(sprintf("After positional copier invocation %d:",
#             $Sub::Multi::Tiny::Util::_positional_copier_invocation_number));
#         Test::More::diag(join "\n", map {
#             sprintf("%s = %s", $_, eval($_))
#         } @vars);
#     }
# 
# } #copier
 (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm:319)
# _complete_dispatcher making Sub::Multi::Tiny::Dispatcher::TypeParams dispatcher with args: $multisub = {
#   'impls' => [
#     {
#       'sig' => {
#         'seen' => '',
#         'parms' => [
#           {
#             'named' => '',
#             'name' => '$answer',
#             'reqd' => 1,
#             'type' => bless( {
#               'compiled_type_constraint' => sub { "DUMMY" },
#               'type_default' => sub { "DUMMY" },
#               'parent' => bless( {
#                 'compiled_type_constraint' => sub { "DUMMY" },
#                 'parent' => bless( {
#                   'compiled_type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'compiled_type_constraint'},
#                   'type_default' => sub { "DUMMY" },
#                   'parent' => bless( {
#                     'sorter' => sub { "DUMMY" },
#                     'coercion' => bless( {
#                       'frozen' => 1,
#                       'name' => '__ANON__',
#                       'type_coercion_map' => [],
#                       'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'},
#                       'display_name' => 'to_Str',
#                       '_compiled_type_constraint_check' => sub { "DUMMY" }
#                     }, 'Type::Coercion' ),
#                     'library' => 'Types::Standard',
#                     'inlined' => sub { "DUMMY" },
#                     'constraint' => sub { "DUMMY" },
#                     'type_default' => sub { "DUMMY" },
#                     'compiled_type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'coercion'}{'_compiled_type_constraint_check'},
#                     'parent' => bless( {
#                       'compiled_type_constraint' => sub { "DUMMY" },
#                       'parent' => bless( {
#                         'compiled_type_constraint' => sub { "DUMMY" },
#                         'parent' => bless( {
#                           'compiled_type_constraint' => sub { "DUMMY" },
#                           'parent' => bless( {
#                             'compiled_type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'},
#                             'type_default' => sub { "DUMMY" },
#                             'coercion' => bless( {
#                               'frozen' => 1,
#                               'name' => '__ANON__',
#                               'type_coercion_map' => [],
#                               'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                               'display_name' => 'to_Any',
#                               '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                             }, 'Type::Coercion' ),
#                             'name' => 'Any',
#                             'library' => 'Types::Standard',
#                             'display_name' => 'Any',
#                             '_is_core' => 1,
#                             'complement_name' => 'None',
#                             '_overload_coderef' => sub { "DUMMY" },
#                             'deprecated' => '',
#                             '_overrides_assert_return' => '',
#                             'constraint' => sub { "DUMMY" },
#                             'inlined' => sub { "DUMMY" },
#                             'definition_context' => {
#                               'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                               'line' => 211,
#                               'package' => 'Types::Standard'
#                             },
#                             'uniq' => 1
#                           }, 'Type::Tiny' ),
#                           'coercion' => bless( {
#                             'frozen' => 1,
#                             'name' => '__ANON__',
#                             'type_coercion_map' => [],
#                             'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                             'display_name' => 'to_Item',
#                             '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                           }, 'Type::Coercion' ),
#                           'name' => 'Item',
#                           'library' => 'Types::Standard',
#                           'display_name' => 'Item',
#                           '_is_core' => 1,
#                           '_overload_coderef' => sub { "DUMMY" },
#                           'deprecated' => '',
#                           '_overrides_assert_return' => '',
#                           'constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'constraint'},
#                           'inlined' => sub { "DUMMY" },
#                           'definition_context' => {
#                             'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                             'line' => 217,
#                             'package' => 'Types::Standard'
#                           },
#                           'uniq' => 2
#                         }, 'Type::Tiny' ),
#                         'coercion' => bless( {
#                           'frozen' => 1,
#                           'name' => '__ANON__',
#                           'type_coercion_map' => [],
#                           'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                           'display_name' => 'to_Defined',
#                           '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                         }, 'Type::Coercion' ),
#                         'name' => 'Defined',
#                         'library' => 'Types::Standard',
#                         'display_name' => 'Defined',
#                         '_is_core' => 1,
#                         '_overload_coderef' => sub { "DUMMY" },
#                         'deprecated' => '',
#                         '_overrides_assert_return' => '',
#                         'complementary_type' => bless( {
#                           'coercion' => bless( {
#                             'frozen' => 1,
#                             'name' => '__ANON__',
#                             'type_coercion_map' => [],
#                             'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'complementary_type'},
#                             'display_name' => 'to_Undef',
#                             '_compiled_type_constraint_check' => sub { "DUMMY" }
#                           }, 'Type::Coercion' ),
#                           'library' => 'Types::Standard',
#                           'complementary_type' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                           'inlined' => sub { "DUMMY" },
#                           'constraint' => sub { "DUMMY" },
#                           'type_default' => sub { "DUMMY" },
#                           'compiled_type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'complementary_type'}{'coercion'}{'_compiled_type_constraint_check'},
#                           'parent' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                           'name' => 'Undef',
#                           '_is_core' => 1,
#                           'display_name' => 'Undef',
#                           '_overload_coderef' => sub { "DUMMY" },
#                           'deprecated' => '',
#                           '_overrides_assert_return' => '',
#                           'definition_context' => {
#                             'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                             'line' => 245,
#                             'package' => 'Types::Standard'
#                           },
#                           'uniq' => 6
#                         }, 'Type::Tiny' ),
#                         'inlined' => sub { "DUMMY" },
#                         'constraint' => sub { "DUMMY" },
#                         'definition_context' => {
#                           'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                           'line' => 253,
#                           'package' => 'Types::Standard'
#                         },
#                         'uniq' => 7
#                       }, 'Type::Tiny' ),
#                       'coercion' => bless( {
#                         'frozen' => 1,
#                         'name' => '__ANON__',
#                         'type_coercion_map' => [],
#                         'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'},
#                         'display_name' => 'to_Value',
#                         '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                       }, 'Type::Coercion' ),
#                       'name' => 'Value',
#                       'library' => 'Types::Standard',
#                       'display_name' => 'Value',
#                       '_is_core' => 1,
#                       '_overload_coderef' => sub { "DUMMY" },
#                       'deprecated' => '',
#                       '_overrides_assert_return' => '',
#                       'inlined' => sub { "DUMMY" },
#                       'constraint' => sub { "DUMMY" },
#                       'definition_context' => {
#                         'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                         'line' => 267,
#                         'package' => 'Types::Standard'
#                       },
#                       'uniq' => 8
#                     }, 'Type::Tiny' ),
#                     'name' => 'Str',
#                     '_is_core' => 1,
#                     'display_name' => 'Str',
#                     '_overload_coderef' => sub { "DUMMY" },
#                     'deprecated' => '',
#                     '_overrides_assert_return' => '',
#                     'definition_context' => {
#                       'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                       'line' => 282,
#                       'package' => 'Types::Standard'
#                     },
#                     'uniq' => 9
#                   }, 'Type::Tiny' ),
#                   'sorter' => sub { "DUMMY" },
#                   'coercion' => bless( {
#                     'frozen' => 1,
#                     'name' => '__ANON__',
#                     'type_coercion_map' => [],
#                     'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'},
#                     'display_name' => 'to_LaxNum',
#                     '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'compiled_type_constraint'}
#                   }, 'Type::Coercion' ),
#                   'name' => 'LaxNum',
#                   'library' => 'Types::Standard',
#                   'display_name' => 'LaxNum',
#                   '_overload_coderef' => sub { "DUMMY" },
#                   'deprecated' => '',
#                   '_overrides_assert_return' => '',
#                   'inlined' => sub { "DUMMY" },
#                   'constraint' => sub { "DUMMY" },
#                   'definition_context' => {
#                     'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                     'line' => 300,
#                     'package' => 'Types::Standard'
#                   },
#                   'uniq' => 10
#                 }, 'Type::Tiny' ),
#                 'coercion' => bless( {
#                   'frozen' => 1,
#                   'name' => '__ANON__',
#                   'type_coercion_map' => [],
#                   'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'},
#                   'display_name' => 'to_Num',
#                   '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'compiled_type_constraint'}
#                 }, 'Type::Coercion' ),
#                 'name' => 'Num',
#                 'library' => 'Types::Standard',
#                 'display_name' => 'Num',
#                 '_overload_coderef' => sub { "DUMMY" },
#                 'deprecated' => '',
#                 '_overrides_assert_return' => '',
#                 'definition_context' => {
#                   'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                   'line' => 335,
#                   'package' => 'Types::Standard'
#                 },
#                 'constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'constraint'},
#                 'uniq' => 12
#               }, 'Type::Tiny' ),
#               'coercion' => bless( {
#                 'frozen' => 1,
#                 'name' => '__ANON__',
#                 'type_coercion_map' => [],
#                 'type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'},
#                 'display_name' => 'to_Int',
#                 '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'compiled_type_constraint'}
#               }, 'Type::Coercion' ),
#               'name' => 'Int',
#               'library' => 'Types::Standard',
#               'display_name' => 'Int',
#               '_is_core' => 1,
#               '_overload_coderef' => sub { "DUMMY" },
#               'deprecated' => '',
#               '_overrides_assert_return' => '',
#               'inlined' => sub { "DUMMY" },
#               'constraint' => sub { "DUMMY" },
#               'definition_context' => {
#                 'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                 'line' => 352,
#                 'package' => 'Types::Standard'
#               },
#               'uniq' => 13
#             }, 'Type::Tiny' )
#           }
#         ]
#       },
#       'filename' => 't/42_pos_and_named.t',
#       'candidate_name' => 'main::my_multi::just_int',
#       'linenum' => 18,
#       'args' => $multisub->{'impls'}[0]{'sig'}{'parms'},
#       'code' => sub { "DUMMY" }
#     },
#     {
#       'sig' => {
#         'seen' => '',
#         'parms' => [
#           {
#             'named' => '',
#             'name' => '$answer',
#             'reqd' => 1,
#             'type' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}
#           },
#           {
#             'named' => '',
#             'name' => '$dict',
#             'reqd' => 1,
#             'type' => bless( {
#               '_my_unslurpy' => bless( {
#                 'compiled_type_constraint' => sub { "DUMMY" },
#                 'parent' => bless( {
#                   'deep_explanation' => sub { "DUMMY" },
#                   'coercion' => bless( {
#                     'frozen' => 1,
#                     'name' => '__ANON__',
#                     'type_coercion_map' => [],
#                     'type_constraint' => $multisub->{'impls'}[1]{'sig'}{'parms'}[1]{'type'}{'_my_unslurpy'}{'parent'},
#                     'display_name' => 'to_Dict',
#                     '_compiled_type_constraint_check' => sub { "DUMMY" }
#                   }, 'Type::Coercion' ),
#                   'library' => 'Types::Standard',
#                   'name_generator' => sub { "DUMMY" },
#                   'constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'constraint'},
#                   'coercion_generator' => sub { "DUMMY" },
#                   'compiled_type_constraint' => $multisub->{'impls'}[1]{'sig'}{'parms'}[1]{'type'}{'_my_unslurpy'}{'parent'}{'coercion'}{'_compiled_type_constraint_check'},
#                   'parent' => bless( {
#                     'deep_explanation' => bless( [
#                       'HashRef',
#                       'deep_explanation'
#                     ], 'Types::Standard::LazyLoad' ),
#                     'coercion' => bless( {
#                       'frozen' => 1,
#                       'name' => '__ANON__',
#                       'type_coercion_map' => [],
#                       'type_constraint' => $multisub->{'impls'}[1]{'sig'}{'parms'}[1]{'type'}{'_my_unslurpy'}{'parent'}{'parent'},
#                       'display_name' => 'to_HashRef',
#                       '_compiled_type_constraint_check' => $multisub->{'impls'}[1]{'sig'}{'parms'}[1]{'type'}{'_my_unslurpy'}{'parent'}{'coercion'}{'_compiled_type_constraint_check'}
#                     }, 'Type::Coercion' ),
#                     'library' => 'Types::Standard',
#                     'inlined' => sub { "DUMMY" },
#                     'constraint' => sub { "DUMMY" },
#                     'coercion_generator' => bless( [
#                       'HashRef',
#                       'coercion_generator'
#                     ], 'Types::Standard::LazyLoad' ),
#                     'compiled_type_constraint' => $multisub->{'impls'}[1]{'sig'}{'parms'}[1]{'type'}{'_my_unslurpy'}{'parent'}{'coercion'}{'_compiled_type_constraint_check'},
#                     'type_default' => sub { "DUMMY" },
#                     'parent' => bless( {
#                       'deep_explanation' => sub { "DUMMY" },
#                       'coercion' => bless( {
#                         'frozen' => 1,
#                         'name' => '__ANON__',
#                         'type_coercion_map' => [],
#                         'type_constraint' => $multisub->{'impls'}[1]{'sig'}{'parms'}[1]{'type'}{'_my_unslurpy'}{'parent'}{'parent'}{'parent'},
#                         'display_name' => 'to_Ref',
#                         '_compiled_type_constraint_check' => sub { "DUMMY" }
#                       }, 'Type::Coercion' ),
#                       'library' => 'Types::Standard',
#                       'constraint' => sub { "DUMMY" },
#                       'inlined' => sub { "DUMMY" },
#                       'compiled_type_constraint' => $multisub->{'impls'}[1]{'sig'}{'parms'}[1]{'type'}{'_my_unslurpy'}{'parent'}{'parent'}{'parent'}{'coercion'}{'_compiled_type_constraint_check'},
#                       'parent' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                       'constraint_generator' => sub { "DUMMY" },
#                       'name' => 'Ref',
#                       '_is_core' => 1,
#                       'display_name' => 'Ref',
#                       '_overload_coderef' => sub { "DUMMY" },
#                       'deprecated' => '',
#                       '_overrides_assert_return' => '',
#                       'definition_context' => {
#                         'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                         'line' => 428,
#                         'package' => 'Types::Standard'
#                       },
#                       'inline_generator' => sub { "DUMMY" },
#                       'uniq' => 16
#                     }, 'Type::Tiny' ),
#                     'my_methods' => {
#                       'hashref_allows_value' => bless( [
#                         'HashRef',
#                         'hashref_allows_value'
#                       ], 'Types::Standard::LazyLoad' ),
#                       'hashref_allows_key' => bless( [
#                         'HashRef',
#                         'hashref_allows_key'
#                       ], 'Types::Standard::LazyLoad' )
#                     },
#                     'constraint_generator' => bless( [
#                       'HashRef',
#                       'constraint_generator'
#                     ], 'Types::Standard::LazyLoad' ),
#                     'name' => 'HashRef',
#                     'display_name' => 'HashRef',
#                     '_is_core' => 1,
#                     '_overload_coderef' => sub { "DUMMY" },
#                     'type_default_generator' => sub { "DUMMY" },
#                     'deprecated' => '',
#                     '_overrides_assert_return' => '',
#                     'definition_context' => {
#                       'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                       'line' => 534,
#                       'package' => 'Types::Standard'
#                     },
#                     'inline_generator' => bless( [
#                       'HashRef',
#                       'inline_generator'
#                     ], 'Types::Standard::LazyLoad' ),
#                     'uniq' => 22
#                   }, 'Type::Tiny' ),
#                   'my_methods' => {
#                     'hashref_allows_value' => sub { "DUMMY" },
#                     'hashref_allows_key' => sub { "DUMMY" },
#                     'dict_is_slurpy' => sub { "DUMMY" }
#                   },
#                   'constraint_generator' => sub { "DUMMY" },
#                   'name' => 'Dict',
#                   'display_name' => 'Dict',
#                   '_overload_coderef' => sub { "DUMMY" },
#                   'deprecated' => '',
#                   '_overrides_assert_return' => '',
#                   'definition_context' => {
#                     'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                     'line' => 828,
#                     'package' => 'Types::Standard'
#                   },
#                   'inline_generator' => sub { "DUMMY" },
#                   'uniq' => 31
#                 }, 'Type::Tiny' ),
#                 'coercion' => bless( {
#                   'frozen' => 1,
#                   'name' => '__ANON__',
#                   'type_coercion_map' => [],
#                   'type_constraint' => $multisub->{'impls'}[1]{'sig'}{'parms'}[1]{'type'}{'_my_unslurpy'},
#                   '_compiled_type_constraint_check' => $multisub->{'impls'}[1]{'sig'}{'parms'}[1]{'type'}{'_my_unslurpy'}{'compiled_type_constraint'}
#                 }, 'Type::Coercion' ),
#                 'name' => '__ANON__',
#                 'display_name' => 'Dict[bar=>Optional[Int],baz=>Optional[Int],foo=>Int]',
#                 'parameters' => [
#                   'foo',
#                   $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'},
#                   'bar',
#                   bless( {
#                     'compiled_type_constraint' => sub { "DUMMY" },
#                     'type_default' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'type_default'},
#                     'parent' => bless( {
#                       'deep_explanation' => sub { "DUMMY" },
#                       'coercion' => bless( {
#                         'frozen' => 1,
#                         'name' => '__ANON__',
#                         'type_coercion_map' => [],
#                         'type_constraint' => $multisub->{'impls'}[1]{'sig'}{'parms'}[1]{'type'}{'_my_unslurpy'}{'parameters'}[3]{'parent'},
#                         'display_name' => 'to_Optional',
#                         '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                       }, 'Type::Coercion' ),
#                       'library' => 'Types::Standard',
#                       'name_generator' => sub { "DUMMY" },
#                       'constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'constraint'},
#                       'coercion_generator' => sub { "DUMMY" },
#                       'compiled_type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'},
#                       'parent' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                       'constraint_generator' => sub { "DUMMY" },
#                       'name' => 'Optional',
#                       'display_name' => 'Optional',
#                       '_overload_coderef' => sub { "DUMMY" },
#                       'type_default_generator' => sub { "DUMMY" },
#                       'deprecated' => '',
#                       '_overrides_assert_return' => '',
#                       'definition_context' => {
#                         'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                         'line' => 707,
#                         'package' => 'Types::Standard'
#                       },
#                       'inline_generator' => sub { "DUMMY" },
#                       'uniq' => 27
#                     }, 'Type::Tiny' ),
#                     'coercion' => bless( {
#                       'frozen' => 1,
#                       'name' => '__ANON__',
#                       'type_coercion_map' => [],
#                       'type_constraint' => $multisub->{'impls'}[1]{'sig'}{'parms'}[1]{'type'}{'_my_unslurpy'}{'parameters'}[3],
#                       '_compiled_type_constraint_check' => $multisub->{'impls'}[1]{'sig'}{'parms'}[1]{'type'}{'_my_unslurpy'}{'parameters'}[3]{'compiled_type_constraint'}
#                     }, 'Type::Coercion' ),
#                     'name' => '__ANON__',
#                     'display_name' => 'Optional[Int]',
#                     'parameters' => [
#                       $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}
#                     ],
#                     'deprecated' => '',
#                     '_build_coercion' => sub { "DUMMY" },
#                     'inlined' => sub { "DUMMY" },
#                     'constraint' => sub { "DUMMY" },
#                     'definition_context' => {
#                       'file' => 'C:\\strawberry\\cpan\\build\\Sub-Multi-Tiny-0.000013-0\\blib\\lib/Sub/Multi/Tiny.pm',
#                       'line' => 326,
#                       'package' => 'main::my_multi'
#                     },
#                     'uniq' => 41
#                   }, 'Type::Tiny' ),
#                   'baz',
#                   $multisub->{'impls'}[1]{'sig'}{'parms'}[1]{'type'}{'_my_unslurpy'}{'parameters'}[3]
#                 ],
#                 'deprecated' => '',
#                 '_build_coercion' => sub { "DUMMY" },
#                 'inlined' => sub { "DUMMY" },
#                 'constraint' => sub { "DUMMY" },
#                 'definition_context' => {
#                   'file' => 'C:\\strawberry\\cpan\\build\\Sub-Multi-Tiny-0.000013-0\\blib\\lib/Sub/Multi/Tiny.pm',
#                   'line' => 326,
#                   'package' => 'main::my_multi'
#                 },
#                 'uniq' => 42
#               }, 'Type::Tiny' ),
#               'slurpy' => 1,
#               'coercion' => bless( {
#                 'frozen' => 1,
#                 'name' => '__ANON__',
#                 'type_coercion_map' => [],
#                 'type_constraint' => $multisub->{'impls'}[1]{'sig'}{'parms'}[1]{'type'},
#                 '_compiled_type_constraint_check' => sub { "DUMMY" }
#               }, 'Type::Coercion' ),
#               'constraint' => sub { "DUMMY" },
#               'inlined' => sub { "DUMMY" },
#               'type_default' => undef,
#               'compiled_type_constraint' => $multisub->{'impls'}[1]{'sig'}{'parms'}[1]{'type'}{'coercion'}{'_compiled_type_constraint_check'},
#               'parent' => bless( {
#                 'deep_explanation' => sub { "DUMMY" },
#                 'slurpy' => 1,
#                 'coercion' => bless( {
#                   'frozen' => 1,
#                   'name' => '__ANON__',
#                   'type_coercion_map' => [],
#                   'type_constraint' => $multisub->{'impls'}[1]{'sig'}{'parms'}[1]{'type'}{'parent'},
#                   'display_name' => 'to_Slurpy',
#                   '_compiled_type_constraint_check' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'}
#                 }, 'Type::Coercion' ),
#                 'library' => 'Types::Standard',
#                 'name_generator' => $multisub->{'impls'}[1]{'sig'}{'parms'}[1]{'type'}{'_my_unslurpy'}{'parameters'}[3]{'parent'}{'name_generator'},
#                 'constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'constraint'},
#                 'compiled_type_constraint' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'compiled_type_constraint'},
#                 'parent' => $multisub->{'impls'}[0]{'sig'}{'parms'}[0]{'type'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'}{'parent'},
#                 'my_methods' => {
#                   'slurp_into' => sub { "DUMMY" },
#                   'unslurpy' => sub { "DUMMY" }
#                 },
#                 'constraint_generator' => sub { "DUMMY" },
#                 'name' => 'Slurpy',
#                 'display_name' => 'Slurpy',
#                 '_overload_coderef' => sub { "DUMMY" },
#                 'deprecated' => '',
#                 '_overrides_assert_return' => '',
#                 'definition_context' => {
#                   'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                   'line' => 771,
#                   'package' => 'Types::Standard'
#                 },
#                 'uniq' => 28
#               }, 'Type::Tiny' ),
#               'my_methods' => {},
#               'name' => '__ANON__',
#               'display_name' => 'Slurpy[Dict[bar=>Optional[Int],baz=>Optional[Int],foo=>Int]]',
#               'parameters' => [
#                 $multisub->{'impls'}[1]{'sig'}{'parms'}[1]{'type'}{'_my_unslurpy'}
#               ],
#               'deprecated' => '',
#               '_build_coercion' => sub { "DUMMY" },
#               'definition_context' => {
#                 'file' => 'C:\\home\\flower\\perl5\\lib\\perl5/Types/Standard.pm',
#                 'line' => 736,
#                 'package' => 'Types::Standard'
#               },
#               'uniq' => 43
#             }, 'Type::Tiny' )
#           }
#         ]
#       },
#       'filename' => 't/42_pos_and_named.t',
#       'candidate_name' => 'main::my_multi::with_dict',
#       'linenum' => 29,
#       'args' => $multisub->{'impls'}[1]{'sig'}{'parms'},
#       'code' => sub { "DUMMY" }
#     }
#   ],
#   'used_by' => 'main',
#   'subname' => 'my_multi',
#   'possible_params' => {
#     '$answer' => 1,
#     '$dict' => 1
#   },
#   'defined_in' => 'main::my_multi'
# };
#  $inner_code = '#line 130 "C:\\strawberry\\cpan\\build\\Sub-Multi-Tiny-0.000013-0\\blib\\lib/Sub/Multi/Tiny/Dispatcher/TypeParams.pm"
#             # Find the candidate
#             @_ = $data[0]->(@_);      # $checker.  Dies on error.
#                 # NOTE: this change can\'t be `local`ized because `goto`
#                 # undoes the `local` - see #8
#             $candidate = $data[1]->[${^_TYPE_PARAMS_MULTISIG}];   # impls
#             $copier = $data[2]->[${^_TYPE_PARAMS_MULTISIG}];      # copiers
# 
# ';
#  $data = sub { "DUMMY" };
#  $VAR4 = [
#   $multisub->{'impls'}[0]{'code'},
#   $multisub->{'impls'}[1]{'code'}
# ];
#  $VAR5 = [
#   sub { "DUMMY" },
#   sub { "DUMMY" }
# ]; (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm:200)
# Sub::Multi::Tiny::Dispatcher::TypeParams dispatcher for main::my_multi():
# #line 204 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#         use strict;
#         use warnings;
#         sub {
#             # Find the candidate
#             my ($candidate, $copier);
# 
# #line 130 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Dispatcher/TypeParams.pm"
#             # Find the candidate
#             @_ = $data[0]->(@_);      # $checker.  Dies on error.
#                 # NOTE: this change can't be `local`ized because `goto`
#                 # undoes the `local` - see #8
#             $candidate = $data[1]->[${^_TYPE_PARAMS_MULTISIG}];   # impls
#             $copier = $data[2]->[${^_TYPE_PARAMS_MULTISIG}];      # copiers
# 
# 
# 
#             # Save the present values of the parameters
# 
# #line 219 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
# my $saved_answer = $main::my_multi::answer;
# 
# #line 219 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
# my $saved_dict = $main::my_multi::dict;
# 
# #line 225 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#             # Create the guard
#             my $guard = Guard::guard {
# 
# #line 221 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
# $main::my_multi::answer = $saved_answer;
# 
# #line 221 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
# $main::my_multi::dict = $saved_dict;
# 
# 
# 
#             }; #End of guard
# 
# #line 234 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
# 
#             # Copy the parameters into the variables the candidate
#             # will access them from
#             &$copier;   # $copier gets @_ automatically
# 
#             # Pass the guard so the parameters will be reset once \$candidate
#             # finishes running.
#             @_ = ($guard);
# 
#             # Invoke the selected candidate
#             goto &$candidate;
#         } #dispatcher
# 
 (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm:248)
# Positional copier invocation 1:
# $copier_args = [
#   42
# ];
# After positional copier invocation 1:
# $main::my_multi::answer = 42
# Positional copier invocation 2:
# $copier_args = [
#   42,
#   {
#     'foo' => 21
#   }
# ];
# After positional copier invocation 2:
# $main::my_multi::answer = 42
# $main::my_multi::dict = HASH(0x2a8f084)
# Positional copier invocation 3:
# $copier_args = [
#   42,
#   {
#     'bar' => 84,
#     'foo' => 21
#   }
# ];
# After positional copier invocation 3:
# $main::my_multi::answer = 42
# $main::my_multi::dict = HASH(0x2bd80d0)
# Positional copier invocation 4:
# $copier_args = [
#   42,
#   {
#     'baz' => 3,
#     'foo' => 21
#   }
# ];
# After positional copier invocation 4:
# $main::my_multi::answer = 42
# $main::my_multi::dict = HASH(0x2bcf250)
t/42_pos_and_named.t ....... ok
# ########################################
# t/43_recursion_fib.t
# Target main::fib package Sub::Multi::Tiny (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:144)
# main::fib using dispatcher Sub::Multi::Tiny::Dispatcher::TypeParams (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:180)
# Making main::fib() (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:184)
# Making main::fib attr M (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:202)
# M code:
# #line 231 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm"
# package main::fib;
# 
# #line 237 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm"
# use Attribute::Handlers;
# use Sub::Multi::Tiny::Util qw(_hlog);
# ##use Data::Dumper;
# 
# sub M :ATTR(CODE,RAWDATA) {
#     _hlog { require Data::Dumper;
#             'In ', __PACKAGE__, "::M: \n",
#             Data::Dumper->Dump([\@_], ['attr_args']) } 2;
# 
#     my ($package, $symbol, $referent, $attr, $data, $phase,
#         $filename, $linenum) = @_;
#     my $funcname = "$package\::" . *{$symbol}{NAME};
# 
#     _hlog {     # Code from Attribute::Handlers, license perl_5
#         ref($referent),
#         $funcname,
#         "($referent)", "was just declared",
#         "and ascribed the ${attr} attribute",
#         "with data ($data)",
#         "in phase $phase",
#         "in file $filename at line $linenum"
#     } 2;
# 
# #line 264 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm"
#     die 'Dispatchers already created - please file a bug report'
#         if Sub::Multi::Tiny::_dispatchers_created();
# 
#     my $multi_def = $_multisubs{'main::fib'};
# 
# #line 272 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm"
#     my $hrSig = Sub::Multi::Tiny::_parse_arglist($data, $funcname);
#     Sub::Multi::Tiny::_check_and_inflate_sig($hrSig, $multi_def,
#         $funcname, $package, $filename, $linenum);
# 
# #line 278 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm"
# 
# #line 282 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm"
#     my $info = {
#         code => $referent,
#         args => $hrSig->{parms},    # TODO remove eventually
#         sig => $hrSig,
# 
#         # For error messages
#         filename => $filename,
#         linenum => $linenum,
#         candidate_name => $funcname
#     };
#     push @{$multi_def->{impls}}, $info;
# 
# } #M
# 
 (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:297)
# Making main::fib::fib stub (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:212)
# In  main::fib ::M: 
#  $attr_args = []; (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:244)
# CODE main::fib::base (CODE(0x28358c4)) was just declared and ascribed the M attribute with data ($n where { $_ <= 1 }) in phase CHECK in file t/43_recursion_fib.t at line 10 (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:258)
# Parsing args for main::fib::base: $n where { $_ <= 1 } (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:221)
# In main::fib evaluating 'where' clause '{ $_ <= 1 }' (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:335)
# In  main::fib ::M: 
#  $attr_args = []; (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:244)
# CODE main::fib::other (CODE(0x293dcfc)) was just declared and ascribed the M attribute with data ($n) in phase CHECK in file t/43_recursion_fib.t at line 11 (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:258)
# Parsing args for main::fib::other: $n (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:221)
# Sub::Multi::Tiny in INIT block (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny.pm:96)
# Making Type::Params dispatcher for:  $multisub = {
#   'impls' => [
#     {
#       'sig' => {
#         'seen' => '',
#         'parms' => [
#           {
#             'named' => '',
#             'name' => '$n',
#             'reqd' => 1,
#             'where' => sub { "DUMMY" }
#           }
#         ]
#       },
#       'filename' => 't/43_recursion_fib.t',
#       'candidate_name' => 'main::fib::base',
#       'linenum' => 10,
#       'args' => $multisub->{'impls'}[0]{'sig'}{'parms'},
#       'code' => sub { "DUMMY" }
#     },
#     {
#       'sig' => {
#         'seen' => '',
#         'parms' => [
#           {
#             'named' => '',
#             'reqd' => 1,
#             'name' => '$n'
#           }
#         ]
#       },
#       'filename' => 't/43_recursion_fib.t',
#       'candidate_name' => 'main::fib::other',
#       'linenum' => 11,
#       'args' => $multisub->{'impls'}[1]{'sig'}{'parms'},
#       'code' => sub { "DUMMY" }
#     }
#   ],
#   'used_by' => 'main',
#   'subname' => 'fib',
#   'possible_params' => {
#     '$n' => 1
#   },
#   'defined_in' => 'main::fib'
# }; (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Dispatcher/TypeParams.pm:82)
# $mpc_defined_in = 'main::fib';
#  $mpc_impl = {
#   'sig' => {
#     'seen' => '',
#     'parms' => [
#       {
#         'named' => '',
#         'name' => '$n',
#         'reqd' => 1,
#         'where' => sub { "DUMMY" }
#       }
#     ]
#   },
#   'filename' => 't/43_recursion_fib.t',
#   'candidate_name' => 'main::fib::base',
#   'linenum' => 10,
#   'args' => $mpc_impl->{'sig'}{'parms'},
#   'code' => sub { "DUMMY" }
# }; (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm:273)
# Copier for main::fib::base():
#  #line 276 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
# use strict;
# use warnings;
# sub {
# 
# #line 283 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#     if( $] lt '5.018' || $VERBOSE > 1) {
#         require Data::Dumper;
#         require Test::More;
#         Test::More::diag(sprintf("Positional copier invocation %d:\n%s",
#             ++$Sub::Multi::Tiny::Util::_positional_copier_invocation_number,
#             Data::Dumper->Dump([\@_],['copier_args'])));
#     }
# 
# #line 293 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#     (
# 
# #line 303 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#         $main::fib::n
# #line 306 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#     ) = @_;
# 
#     if( $] lt '5.018' || $VERBOSE > 1) {
#         Test::More::diag(sprintf("After positional copier invocation %d:",
#             $Sub::Multi::Tiny::Util::_positional_copier_invocation_number));
#         Test::More::diag(join "\n", map {
#             sprintf("%s = %s", $_, eval($_))
#         } @vars);
#     }
# 
# } #copier
 (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm:319)
# $mpc_defined_in = 'main::fib';
#  $mpc_impl = {
#   'sig' => {
#     'seen' => '',
#     'parms' => [
#       {
#         'named' => '',
#         'reqd' => 1,
#         'name' => '$n'
#       }
#     ]
#   },
#   'filename' => 't/43_recursion_fib.t',
#   'candidate_name' => 'main::fib::other',
#   'linenum' => 11,
#   'args' => $mpc_impl->{'sig'}{'parms'},
#   'code' => sub { "DUMMY" }
# }; (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm:273)
# Copier for main::fib::other():
#  #line 276 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
# use strict;
# use warnings;
# sub {
# 
# #line 283 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#     if( $] lt '5.018' || $VERBOSE > 1) {
#         require Data::Dumper;
#         require Test::More;
#         Test::More::diag(sprintf("Positional copier invocation %d:\n%s",
#             ++$Sub::Multi::Tiny::Util::_positional_copier_invocation_number,
#             Data::Dumper->Dump([\@_],['copier_args'])));
#     }
# 
# #line 293 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#     (
# 
# #line 303 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#         $main::fib::n
# #line 306 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#     ) = @_;
# 
#     if( $] lt '5.018' || $VERBOSE > 1) {
#         Test::More::diag(sprintf("After positional copier invocation %d:",
#             $Sub::Multi::Tiny::Util::_positional_copier_invocation_number));
#         Test::More::diag(join "\n", map {
#             sprintf("%s = %s", $_, eval($_))
#         } @vars);
#     }
# 
# } #copier
 (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm:319)
# _complete_dispatcher making Sub::Multi::Tiny::Dispatcher::TypeParams dispatcher with args: $multisub = {
#   'impls' => [
#     {
#       'sig' => {
#         'seen' => '',
#         'parms' => [
#           {
#             'named' => '',
#             'name' => '$n',
#             'reqd' => 1,
#             'where' => sub { "DUMMY" }
#           }
#         ]
#       },
#       'filename' => 't/43_recursion_fib.t',
#       'candidate_name' => 'main::fib::base',
#       'linenum' => 10,
#       'args' => $multisub->{'impls'}[0]{'sig'}{'parms'},
#       'code' => sub { "DUMMY" }
#     },
#     {
#       'sig' => {
#         'seen' => '',
#         'parms' => [
#           {
#             'named' => '',
#             'reqd' => 1,
#             'name' => '$n'
#           }
#         ]
#       },
#       'filename' => 't/43_recursion_fib.t',
#       'candidate_name' => 'main::fib::other',
#       'linenum' => 11,
#       'args' => $multisub->{'impls'}[1]{'sig'}{'parms'},
#       'code' => sub { "DUMMY" }
#     }
#   ],
#   'used_by' => 'main',
#   'subname' => 'fib',
#   'possible_params' => {
#     '$n' => 1
#   },
#   'defined_in' => 'main::fib'
# };
#  $inner_code = '#line 130 "C:\\strawberry\\cpan\\build\\Sub-Multi-Tiny-0.000013-0\\blib\\lib/Sub/Multi/Tiny/Dispatcher/TypeParams.pm"
#             # Find the candidate
#             @_ = $data[0]->(@_);      # $checker.  Dies on error.
#                 # NOTE: this change can\'t be `local`ized because `goto`
#                 # undoes the `local` - see #8
#             $candidate = $data[1]->[${^_TYPE_PARAMS_MULTISIG}];   # impls
#             $copier = $data[2]->[${^_TYPE_PARAMS_MULTISIG}];      # copiers
# 
# ';
#  $data = sub { "DUMMY" };
#  $VAR4 = [
#   $multisub->{'impls'}[0]{'code'},
#   $multisub->{'impls'}[1]{'code'}
# ];
#  $VAR5 = [
#   sub { "DUMMY" },
#   sub { "DUMMY" }
# ]; (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm:200)
# Sub::Multi::Tiny::Dispatcher::TypeParams dispatcher for main::fib():
# #line 204 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#         use strict;
#         use warnings;
#         sub {
#             # Find the candidate
#             my ($candidate, $copier);
# 
# #line 130 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Dispatcher/TypeParams.pm"
#             # Find the candidate
#             @_ = $data[0]->(@_);      # $checker.  Dies on error.
#                 # NOTE: this change can't be `local`ized because `goto`
#                 # undoes the `local` - see #8
#             $candidate = $data[1]->[${^_TYPE_PARAMS_MULTISIG}];   # impls
#             $copier = $data[2]->[${^_TYPE_PARAMS_MULTISIG}];      # copiers
# 
# 
# 
#             # Save the present values of the parameters
# 
# #line 219 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
# my $saved_n = $main::fib::n;
# 
# #line 225 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
#             # Create the guard
#             my $guard = Guard::guard {
# 
# #line 221 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
# $main::fib::n = $saved_n;
# 
# 
# 
#             }; #End of guard
# 
# #line 234 "C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm"
# 
#             # Copy the parameters into the variables the candidate
#             # will access them from
#             &$copier;   # $copier gets @_ automatically
# 
#             # Pass the guard so the parameters will be reset once \$candidate
#             # finishes running.
#             @_ = ($guard);
# 
#             # Invoke the selected candidate
#             goto &$candidate;
#         } #dispatcher
# 
 (at C:\strawberry\cpan\build\Sub-Multi-Tiny-0.000013-0\blib\lib/Sub/Multi/Tiny/Util.pm:248)
# Positional copier invocation 1:
# $copier_args = [
#   0
# ];
# After positional copier invocation 1:
# $main::fib::n = 0
# Positional copier invocation 2:
# $copier_args = [
#   1
# ];
# After positional copier invocation 2:
# $main::fib::n = 1
# Positional copier invocation 3:
# $copier_args = [
#   2
# ];
# After positional copier invocation 3:
# $main::fib::n = 2
# Positional copier invocation 4:
# $copier_args = [
#   1
# ];
# After positional copier invocation 4:
# $main::fib::n = 1
# Positional copier invocation 5:
# $copier_args = [
#   3
# ];
# After positional copier invocation 5:
# $main::fib::n = 3
# Positional copier invocation 6:
# $copier_args = [
#   2
# ];
# After positional copier invocation 6:
# $main::fib::n = 2
# Positional copier invocation 7:
# $copier_args = [
#   1
# ];
# After positional copier invocation 7:
# $main::fib::n = 1
# Positional copier invocation 8:
# $copier_args = [
#   5
# ];
# After positional copier invocation 8:
# $main::fib::n = 5
# Positional copier invocation 9:
# $copier_args = [
#   4
# ];
# After positional copier invocation 9:
# $main::fib::n = 4
# Positional copier invocation 10:
# $copier_args = [
#   3
# ];
# After positional copier invocation 10:
# $main::fib::n = 3
# Positional copier invocation 11:
# $copier_args = [
#   2
# ];
# After positional copier invocation 11:
# $main::fib::n = 2
# Positional copier invocation 12:
# $copier_args = [
#   1
# ];
# After positional copier invocation 12:
# $main::fib::n = 1
t/43_recursion_fib.t ....... ok
All tests successful.
Files=14, Tests=236, 11 wallclock secs ( 0.11 usr +  0.17 sys =  0.28 CPU)
Result: PASS

------------------------------
PREREQUISITES
------------------------------

Prerequisite modules loaded:

requires:

    Module              Need     Have     
    ------------------- -------- ---------
    Attribute::Handlers 0.79     0.88     
    attributes          0        0.09     
    Carp                0        1.50     
    constant            0        1.33     
    Data::Dumper        0        2.161    
    enum                1.08     1.11     
    Exporter            5.57     5.72     
    Guard               1.023    1.023    
    Import::Into        1.002005 1.002005 
    parent              0        0.236    
    perl                5.008001 5.008009 
    Scalar::Util        1.50     1.63     
    strict              0        1.03     
    subs                0        1.00     
    Text::Balanced      2.01     2.06     
    Type::Params        1.999010 2.001_000
    vars                0        1.01     
    vars::i             1.10     2.000000 
    warnings            0        1.05_01  

build_requires:

    Module              Need     Have     
    ------------------- -------- ---------
    Config              0        0        
    CPAN::Meta          2.150008 2.150010 
    Data::PowerSet      0.05     0.05     
    IPC::Run3           0.047    0.048    
    lib::relative       1.000    1.001    
    Test::Fatal         0.014    0.014    
    Test::More          0.98     1.302191 
    Type::Tiny          1.004004 2.001_000
    Types::Standard     0        2.001_000

configure_requires:

    Module              Need     Have     
    ------------------- -------- ---------
    Cwd                 0        3.62     
    File::Spec          0        3.62     
    Module::Build::Tiny 0.035    0.039    
    Parse::Yapp         0        1.21     
    Parse::Yapp::Driver 0        1.21     


------------------------------
ENVIRONMENT AND OTHER CONTEXT
------------------------------

Environment variables:

    COMSPEC = C:\windows\system32\cmd.exe
    NONINTERACTIVE_TESTING = 1
    NUMBER_OF_PROCESSORS = 4
    PATH = C:\home\flower\perl5\bin;C:\windows\system32;C:\windows;C:\windows\System32\Wbem;C:\windows\System32\WindowsPowerShell\v1.0\;C:\Strawberry\c\bin;C:\Strawberry\perl\site\bin;C:\Strawberry\perl\bin
    PERL5LIB = C:\home\flower\perl5\lib\perl5
    PERL5OPT = 
    PERL5_CPANPLUS_IS_RUNNING = 4876
    PERL5_CPAN_IS_RUNNING = 4876
    PERL_LOCAL_LIB_ROOT = C:\home\flower\perl5
    PERL_MB_OPT = --install_base "C:\\home\\flower\\perl5"
    PERL_MM_OPT = INSTALL_BASE=C:\\home\\flower\\perl5
    PERL_MM_USE_DEFAULT = 1
    PROCESSOR_IDENTIFIER = x86 Family 6 Model 37 Stepping 5, GenuineIntel
    TEMP = C:\Users\user\AppData\Local\Temp
    TERM = dumb

Perl special variables (and OS-specific diagnostics, for MSWin32):

    $^X = C:\Strawberry\perl\bin\perl.exe
    $UID/$EUID = 0 / 0
    $GID = 0
    $EGID = 0
    Win32::GetOSName = Win7
    Win32::GetOSVersion = Service Pack 1, 6, 1, 7601, 2, 1, 0, 256, 1
    Win32::FsType = NTFS
    Win32::IsAdminUser = 0

Perl module toolchain versions installed:

    Module              Have    
    ------------------- --------
    CPAN                2.16    
    CPAN::Meta          2.150010
    Cwd                 3.62    
    ExtUtils::CBuilder  0.280236
    ExtUtils::Command   7.65_02 
    ExtUtils::Install   2.14    
    ExtUtils::MakeMaker 7.65_02 
    ExtUtils::Manifest  1.70    
    ExtUtils::ParseXS   3.44    
    File::Spec          3.62    
    JSON                4.10    
    JSON::PP            4.12    
    Module::Build       0.42_28 
    Module::Signature   0.88    
    Parse::CPAN::Meta   2.150010
    Test::Harness       3.44    
    Test::More          1.302191
    YAML                1.26    
    YAML::Syck          1.29    
    version             0.9924  


--

Summary of my perl5 (revision 5 version 8 subversion 9) configuration:
  Platform:
    osname=MSWin32, osvers=5.1, archname=MSWin32-x86-multi-thread
    uname='Win32 strawberryperl 5.8.9.5 #1 Wed Apr 28 11:51:06 2010 i386'
    config_args='undef'
    hint=recommended, useposix=true, d_sigaction=undef
    usethreads=define use5005threads=undef useithreads=define usemultiplicity=define
    useperlio=define d_sfio=undef uselargefiles=define usesocks=undef
    use64bitint=undef use64bitall=undef uselongdouble=undef
    usemymalloc=n, bincompat5005=undef
  Compiler:
    cc='gcc', ccflags =' -s -O2 -DWIN32 -DHAVE_DES_FCRYPT  -DUSE_SITECUSTOMIZE -DPERL_IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS -fno-strict-aliasing -DPERL_MSVCRT_READFIX',
    optimize='-s -O2',
    cppflags='-DWIN32'
    ccversion='', gccversion='3.4.5', gccosandvers=''
    intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=1234
    d_longlong=undef, longlongsize=8, d_longdbl=define, longdblsize=12
    ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='long long', lseeksize=8
    alignbytes=8, prototype=define
  Linker and Libraries:
    ld='g++', ldflags ='-s -L"C:\strawberry\perl\lib\CORE" -L"C:\strawberry\c\lib"'
    libpth=C:\strawberry\c\lib
    libs= -lmsvcrt -lmoldname -lkernel32 -luser32 -lgdi32 -lwinspool -lcomdlg32 -ladvapi32 -lshell32 -lole32 -loleaut32 -lnetapi32 -luuid -lws2_32 -lmpr -lwinmm -lversion -lodbc32 -lodbccp32
    perllibs= -lmsvcrt -lmoldname -lkernel32 -luser32 -lgdi32 -lwinspool -lcomdlg32 -ladvapi32 -lshell32 -lole32 -loleaut32 -lnetapi32 -luuid -lws2_32 -lmpr -lwinmm -lversion -lodbc32 -lodbccp32
    libc=-lmsvcrt, so=dll, useshrplib=true, libperl=libperl58.a
    gnulibc_version=''
  Dynamic Linking:
    dlsrc=dl_win32.xs, dlext=dll, d_dlsymun=undef, ccdlflags=' '
    cccdlflags=' ', lddlflags='-mdll -s -L"C:\strawberry\perl\lib\CORE" -L"C:\strawberry\c\lib"'


Characteristics of this binary (from libperl): 
  Compile-time options: MULTIPLICITY PERL_IMPLICIT_CONTEXT PERL_IMPLICIT_SYS
                        PERL_MALLOC_WRAP PL_OP_SLAB_ALLOC USE_FAST_STDIO
                        USE_ITHREADS USE_LARGE_FILES USE_PERLIO
                        USE_SITECUSTOMIZE
  Built under MSWin32
  Compiled at Apr 28 2010 11:57:55
  %ENV:
    PERL5LIB="C:\home\flower\perl5\lib\perl5"
    PERL5_CPANPLUS_IS_RUNNING="4876"
    PERL5_CPAN_IS_RUNNING="4876"
    PERL_LOCAL_LIB_ROOT="C:\home\flower\perl5"
    PERL_MB_OPT="--install_base "C:\\home\\flower\\perl5""
    PERL_MM_OPT="INSTALL_BASE=C:\\home\\flower\\perl5"
    PERL_MM_USE_DEFAULT="1"
  @INC:
    C:\home\flower\perl5\lib\perl5/5.8.9/MSWin32-x86-multi-thread
    C:\home\flower\perl5\lib\perl5/5.8.9
    C:\home\flower\perl5\lib\perl5/MSWin32-x86-multi-thread
    C:\home\flower\perl5\lib\perl5
    C:/Strawberry/perl/lib
    C:/Strawberry/perl/site/lib
    C:\strawberry\perl\vendor\lib
    .