think this should be outside the nsamespace