class TLD {

    public static ByteSequence parseFieldAndValueFromTF(ByteSequence cq) {
        ArrayList<Integer> nulls = instancesOf(0, cq, 2);
        ArrayList<Integer> otherNulls = lastInstancesOf(0, cq, 1);
        final int startFn = otherNulls.get(0) + 1, stopFn = cq.length();
        final int startFv = nulls.get(1) + 1, stopFv = otherNulls.get(0);
        
        byte[] fnFv = new byte[stopFn - startFn + 1 + stopFv - startFv];
        
        System.arraycopy(cq.getBackingArray(), startFn + cq.offset(), fnFv, 0, stopFn - startFn);
        System.arraycopy(cq.getBackingArray(), startFv + cq.offset(), fnFv, stopFn - startFn + 1, stopFv - startFv);
        return new ArrayByteSequence(fnFv);
    }

    private  TLD();

}