removed dependency on props