sub scale { my $self = shift; my ($x,$y) = @_; return defined($y) ? Eclipse->new($x * $self->x, $y * $self->x) : Kreis->new($x * $self->x); }