fixed to use fetch() with -1