Merged from master, resolving conflicts.