Source attributes refactaring
refactaring source class
add source loader