implemented some things