all "must have" functionality implemented. :)