class extension lets the user decide what they want to use