improved data receiving more