fixed abstractpiece