Describe your changes in detail.
If suggesting a new feature or change, please discuss it in an issue first. _If fixing a bug, there should be an issue describing it with steps to reproduce. Please link to any related issues here:
Why is this change required? What problem does it solve?
Please describe in detail how you tested your changes. Include details of your testing environment, and the tests you ran to see how your change affects other areas of the code, etc.
- Bug fix (non-breaking change that fixes an issue)
- New feature (non-breaking change that adds functionality)
- Breaking change (fix or feature that would cause existing functionality to not work as expected)