stylesource needs refactor