added some scores explanations and refactored a bit