Changed abstract->base, and default inheritance from base