basic functionality and appearance