| line | true | false | branch | 
 
| 33 | 80 | 0 | encoded_buffer = (uint8_t*) SvPV(buffer, encoded_size); | 
 
| 35 | 0 | 80 | if(!BrotliDecoderDecompress(encoded_size, encoded_buffer, &decoded_size, decoded_buffer)){ | 
 
| 68 | 9454 | 0 | next_in = (uint8_t*) SvPV(in, available_in); | 
 
| 72 | 9454 | 9454 | while(result == BROTLI_DECODER_RESULT_NEEDS_MORE_OUTPUT) { | 
 
| 81 | 0 | 9454 | if(!result){ | 
 
| 106 | 0 | 38 | if( quality < BROTLI_MIN_QUALITY || quality > BROTLI_MAX_QUALITY ) { | 
 
| 109 | 38 | 0 | if( lgwin < BROTLI_MIN_WINDOW_BITS || lgwin > BROTLI_MAX_WINDOW_BITS ) { | 
 
|  | 0 | 38 | if( lgwin < BROTLI_MIN_WINDOW_BITS || lgwin > BROTLI_MAX_WINDOW_BITS ) { | 
 
| 112 | 38 | 0 | decoded_buffer = (uint8_t*) SvPV(buffer, decoded_size); | 
 
| 114 | 0 | 38 | if(!encoded_size){ | 
 
| 125 | 0 | 38 | if(!result){ | 
 
| 159 | 0 | 0 | if( value < BROTLI_MIN_WINDOW_BITS || value > BROTLI_MAX_WINDOW_BITS ) { | 
 
|  | 0 | 0 | if( value < BROTLI_MIN_WINDOW_BITS || value > BROTLI_MAX_WINDOW_BITS ) { | 
 
| 165 | 0 | 76 | if( value < BROTLI_MIN_QUALITY || value > BROTLI_MAX_QUALITY ) { | 
 
| 214 | 76 | 76 | if(in == &PL_sv_undef) | 
 
| 217 | 76 | 0 | next_in = (uint8_t*) SvPV(in, available_in); | 
 
| 229 | 0 | 152 | if(!result) { | 
 
| 234 | 94 | 58 | if( available_out != BUFFER_SIZE ) { | 
 
| 238 | 76 | 76 | if( | 
 
| 239 | 76 | 0 | BrotliEncoderIsFinished(self->encoder) || | 
 
| 240 | 0 | 76 | (!available_in && !BrotliEncoderHasMoreOutput(self->encoder)) |