improved reliability, added data bounds