merge and working on killset
modify uses func