I'd say this is a pretty good first iteration.