added object oriented styles