proc multilist {value args} {
set res $value
foreach dim [lreverse $args] {
set res [lrepeat $dim $res]
}
return $res