The 3 fundamental concepts of structured programming