change function structures