added diferent funcitons