//! PackBits decoder for TIFF.
typeError=Box<dyn std::error::Error>;pubfndecode(data:&[u8])->Result<Vec<u8>, Error>{letmut buf =vec![];letmut i =0;while i < data.len(){let run = data[i]asusize;
i +=1;if run >128{let len =256- run;let byte = data[i];for_in0..len +1{
buf.push(byte)}
i +=1;}elseif run <128{for_in0..run +1{
buf.push(data[i]);
i +=1;}}}Ok(buf)}