Not really abstract anymore part 2