adding working function list by broff