started work on abstract component