code: func (api *PrivateDebugAPI) GetBadBlocks(ctx context.Context) ([]*BadBlockArgs, error) {
  	blocks := api.eth.BlockChain().BadBlocks()
  	results := make([]*BadBlockArgs, len(blocks))
  
  	var err error
  	for i, block := range blocks {
  		results[i] = &BadBlockArgs{
  			Hash: block.Hash(),
  		}
  		if rlpBytes, err := rlp.EncodeToBytes(block); err != nil {
  			results[i].RLP = err.Error() // Hacky, but hey, it works
  		} else {
  			results[i].RLP = fmt.Sprintf("0x%x", rlpBytes)
  		}
  		if results[i].Block, err = ethapi.RPCMarshalBlock(block, true, true); err != nil {
  			results[i].Block = map[string]interface{}{"error": err.Error()}
  		}
  	}
  	return results, nil
  }
docs: // GetBadBlocks returns a list of the last 'bad blocks' that the client has seen on the network
  // and returns them as a JSON list of block-hashes