make the ultrashell working with dynamic arrays