-n 
readding naive implementations