avoid extra big allocation, continued

Change-Id: I0e277d9cb47d9e6bf007b7a4668be339f2884b25
avoid extra big allocation, continued

Change-Id: I6cf7c2535e1a4b8163413c1826535b856587bc00