memory allocation part 2