Added additional fields
Refactored code