merge upstream into theme branch