Reformatted with IntelliJ-Ladders-CodeStyle.xml