updated classes to not use internal method