Gustavo Petro sworn in as Colombian president