create and adapt Subject class