merged from davids branch