added basic functionality;