why only dynamic allocation?