start: use malloc