u can use new instead of alloc init