lots of markup updates