problems
update
add new functions