Update things to latest versions
Working solution with helper functions