change messages
remove premature optimization and 'beg'
simplify Style location
factor out 'same' and simplify things with it
inline getters