fixed mem bug