The object NonAssociativeProduct is a wrapper type, with ancestor classes Expression < BasicList < Thing.