add generic shape