added rotation
implemented ssdo