More descriptive names
Add some comments