https://medium.com/javarevisited/java-programming-fundamentals-variables-and-input-output-9cf70e2c3cab