updated psuedo