AbstractConstruct   C