convertible refactor
stlye changes