added some func