begin refactor for dynamic svg