update source structure