design notes
refactoring
refactoring
refactoring
refactoring