finished base method.