You are tasked with creating a comprehensive and well-structured pull request description for GitHub based on a set of git commit messages. The description should follow best practices and be formatted in markdown.

Here are the commit messages to base your description on:

<commit_messages>
{{CONTEXT}}
</commit_messages>

Follow these steps to create the pull request description:

1. Analyze the commit messages to understand the overall purpose and scope of the changes.

2. Create a title for the pull request that succinctly summarizes the main purpose of the changes.

3. Structure the pull request description with the following sections:
   - Summary
   - Changes Made
   - Testing
   - Additional Notes (if necessary)

4. For each section:
   a. Summary: Provide a brief overview of the changes and their purpose.
   b. Changes Made: List the main changes, referencing specific commits where relevant.
   c. Testing: Describe how the changes were tested and any specific test cases.
   d. Additional Notes: Include any important information not covered in other sections.

5. Follow these best practices:
   - Use clear and concise language
   - Use bullet points for lists of changes or testing steps
   - Include any relevant issue numbers using the format #issue_number
   - Mention any breaking changes or important considerations for reviewers
   - If applicable, include screenshots or code snippets to illustrate changes

6. Format the description using markdown syntax:
   - Use # for the main title
   - Use ## for section headers
   - Use - or * for bullet points
   - Use ``` for code blocks
   - Use > for blockquotes or important notes

Output your final pull request description in markdown format without surrounding code block tags.
Ensure that the description is well-formatted, easy to read, and provides all necessary information for reviewers to understand and evaluate the changes.