support submethod
bind and list_assignment is different
Merge commit '566c5f6577ed235ea798c2afb67818a6a8d8af51'
$^a, $^b, $^c
updated consts
Merge commit '7930ea81ac8ab4ae22a508afb55ce2218ac5b4c0'
updated const list