changed a little. still have to make main class for testing