modularizando
add setter functinalities