missed data.length() to data_len