All functions added and they work correctly