add nan check