- Refactored the defaultElement logic
- Added appropriate license to new classes