style and updated interface