cleaning, adding basic functionality