updated function declarations