Devicetree
 help / color / mirror / Atom feed
* [PATCH v2 00/16] media: iris: Add AR50LT core support and enable Agatti platform
@ 2026-05-13 12:45 Dmitry Baryshkov
  2026-05-13 12:45 ` [PATCH v2 01/16] media: iris: Skip UBWC configuration when not supported Dmitry Baryshkov
                   ` (16 more replies)
  0 siblings, 17 replies; 19+ messages in thread
From: Dmitry Baryshkov @ 2026-05-13 12:45 UTC (permalink / raw)
  To: Vikash Garodia, Abhinav Kumar, Bryan O'Donoghue,
	Mauro Carvalho Chehab, Bjorn Andersson, Konrad Dybcio,
	Rob Herring, Krzysztof Kozlowski, Conor Dooley, Vishnu Reddy
  Cc: linux-media, linux-arm-msm, linux-kernel, devicetree,
	Dikshita Agarwal, Konrad Dybcio

This series adds support for the AR50Lt VPU core to the iris driver and
enables the Agatti SoC to use Gen2 firmware and HFI.

AR50Lt introduces a few platform-specific requirements that need to be
handled in the iris core and VPU abstraction layer. To accommodate
this, the series adds minimal hooks and updates needed to allow the
firmware to operate correctly on AR50Lt without impacting existing
supported platforms.

Additionally, the series wires up Agatti to use the Gen2 firmware and
HFI path, aligning it with newer generations of supported Qualcomm
video hardware.

v4l2-compliance results:

v4l2-compliance -d /dev/video1 -s
v4l2-compliance 1.33.0-5421, 64 bits, 64-bit time_t
v4l2-compliance SHA: af4a91dea9a2 2025-10-29 10:33:25

Compliance test for iris_driver device /dev/video1:

Driver Info:
        Driver name      : iris_driver
        Card type        : Iris Encoder
        Bus info         : platform:5a00000.video-codec
        Driver version   : 6.19.0
        Capabilities     : 0x84204000
                Video Memory-to-Memory Multiplanar
                Streaming
                Extended Pix Format
                Device Capabilities
        Device Caps      : 0x04204000
                Video Memory-to-Memory Multiplanar
                Streaming
                Extended Pix Format
        Detected Stateful Encoder

Required ioctls:
        test VIDIOC_QUERYCAP: OK
        test invalid ioctls: OK

Allow for multiple opens:
        test second /dev/video1 open: OK
        test VIDIOC_QUERYCAP: OK
        test VIDIOC_G/S_PRIORITY: OK
        test for unlimited opens: OK

Debug ioctls:
        test VIDIOC_DBG_G/S_REGISTER: OK (Not Supported)
        test VIDIOC_LOG_STATUS: OK (Not Supported)

Input ioctls:
        test VIDIOC_G/S_TUNER/ENUM_FREQ_BANDS: OK (Not Supported)
        test VIDIOC_G/S_FREQUENCY: OK (Not Supported)
        test VIDIOC_S_HW_FREQ_SEEK: OK (Not Supported)
        test VIDIOC_ENUMAUDIO: OK (Not Supported)
        test VIDIOC_G/S/ENUMINPUT: OK (Not Supported)
        test VIDIOC_G/S_AUDIO: OK (Not Supported)
        Inputs: 0 Audio Inputs: 0 Tuners: 0

Output ioctls:
        test VIDIOC_G/S_MODULATOR: OK (Not Supported)
        test VIDIOC_G/S_FREQUENCY: OK (Not Supported)
        test VIDIOC_ENUMAUDOUT: OK (Not Supported)
        test VIDIOC_G/S/ENUMOUTPUT: OK (Not Supported)
        test VIDIOC_G/S_AUDOUT: OK (Not Supported)
        Outputs: 0 Audio Outputs: 0 Modulators: 0

Input/Output configuration ioctls:
        test VIDIOC_ENUM/G/S/QUERY_STD: OK (Not Supported)
        test VIDIOC_ENUM/G/S/QUERY_DV_TIMINGS: OK (Not Supported)
        test VIDIOC_DV_TIMINGS_CAP: OK (Not Supported)
        test VIDIOC_G/S_EDID: OK (Not Supported)

Control ioctls:
        test VIDIOC_QUERY_EXT_CTRL/QUERYMENU: OK
        test VIDIOC_QUERYCTRL: OK
        test VIDIOC_G/S_CTRL: OK
        test VIDIOC_G/S/TRY_EXT_CTRLS: OK
        test VIDIOC_(UN)SUBSCRIBE_EVENT/DQEVENT: OK
        test VIDIOC_G/S_JPEGCOMP: OK (Not Supported)
        Standard Controls: 43 Private Controls: 0

Format ioctls:
        test VIDIOC_ENUM_FMT/FRAMESIZES/FRAMEINTERVALS: OK
        test VIDIOC_G/S_PARM: OK
        test VIDIOC_G_FBUF: OK (Not Supported)
        test VIDIOC_G_FMT: OK
        test VIDIOC_TRY_FMT: OK
        test VIDIOC_S_FMT: OK
        test VIDIOC_G_SLICED_VBI_CAP: OK (Not Supported)
        test Cropping: OK
        test Composing: OK (Not Supported)
        test Scaling: OK (Not Supported)

Codec ioctls:
        test VIDIOC_(TRY_)ENCODER_CMD: OK
        test VIDIOC_G_ENC_INDEX: OK (Not Supported)
        test VIDIOC_(TRY_)DECODER_CMD: OK (Not Supported)

Buffer ioctls:
        test VIDIOC_REQBUFS/CREATE_BUFS/QUERYBUF: OK
        test CREATE_BUFS maximum buffers: OK
        test VIDIOC_REMOVE_BUFS: OK
        test VIDIOC_EXPBUF: OK
        test Requests: OK (Not Supported)
        test blocking wait: OK

Test input 0:

Streaming ioctls:
        test read/write: OK67609.731994] use of bytesused == 0 is deprecated and will be removed in the future,
[67609.741833] use the actual size instead.
m (Not Supported)
        Video Capture Multiplanar: Captured 61 buffers
        test MMAP (select, REQBUFS): OK
        Video Capture Multiplanar: Captured 61 buffers
        test MMAP (epoll, REQBUFS): OK
        Video Capture Multiplanar: Captured 61 buffers
        test MMAP (select, CREATE_BUFS): OK
        Video Capture Multiplanar: Captured 61 buffers
        test MMAP (epoll, CREATE_BUFS): OK
        test USERPTR (select): OK (Not Supported)
        test DMABUF: Cannot test, specify --expbuf-device

Total for iris_driver device /dev/video1: 54, Succeeded: 54, Failed: 0, Warnings: 0

v4l2-compliance -d /dev/video0 -s5 --stream-from=/media/FVDO_Freeway_720p.264
v4l2-compliance 1.33.0-5421, 64 bits, 64-bit time_t
v4l2-compliance SHA: af4a91dea9a2 2025-10-29 10:33:25

Compliance test for iris_driver device /dev/video0:

Driver Info:
        Driver name      : iris_driver
        Card type        : Iris Decoder
        Bus info         : platform:5a00000.video-codec
        Driver version   : 6.19.0
        Capabilities     : 0x84204000
                Video Memory-to-Memory Multiplanar
                Streaming
                Extended Pix Format
                Device Capabilities
        Device Caps      : 0x04204000
                Video Memory-to-Memory Multiplanar
                Streaming
                Extended Pix Format
        Detected Stateful Decoder

Required ioctls:
        test VIDIOC_QUERYCAP: OK
        test invalid ioctls: OK

Allow for multiple opens:
        test second /dev/video0 open: OK
        test VIDIOC_QUERYCAP: OK
        test VIDIOC_G/S_PRIORITY: OK
        test for unlimited opens: OK

Debug ioctls:
        test VIDIOC_DBG_G/S_REGISTER: OK (Not Supported)
        test VIDIOC_LOG_STATUS: OK (Not Supported)

Input ioctls:
        test VIDIOC_G/S_TUNER/ENUM_FREQ_BANDS: OK (Not Supported)
        test VIDIOC_G/S_FREQUENCY: OK (Not Supported)
        test VIDIOC_S_HW_FREQ_SEEK: OK (Not Supported)
        test VIDIOC_ENUMAUDIO: OK (Not Supported)
        test VIDIOC_G/S/ENUMINPUT: OK (Not Supported)
        test VIDIOC_G/S_AUDIO: OK (Not Supported)
        Inputs: 0 Audio Inputs: 0 Tuners: 0

Output ioctls:
        test VIDIOC_G/S_MODULATOR: OK (Not Supported)
        test VIDIOC_G/S_FREQUENCY: OK (Not Supported)
        test VIDIOC_ENUMAUDOUT: OK (Not Supported)
        test VIDIOC_G/S/ENUMOUTPUT: OK (Not Supported)
        test VIDIOC_G/S_AUDOUT: OK (Not Supported)
        Outputs: 0 Audio Outputs: 0 Modulators: 0

Input/Output configuration ioctls:
        test VIDIOC_ENUM/G/S/QUERY_STD: OK (Not Supported)
        test VIDIOC_ENUM/G/S/QUERY_DV_TIMINGS: OK (Not Supported)
        test VIDIOC_DV_TIMINGS_CAP: OK (Not Supported)
        test VIDIOC_G/S_EDID: OK (Not Supported)

Control ioctls:
        test VIDIOC_QUERY_EXT_CTRL/QUERYMENU: OK
        test VIDIOC_QUERYCTRL: OK
        test VIDIOC_G/S_CTRL: OK
        test VIDIOC_G/S/TRY_EXT_CTRLS: OK
        test VIDIOC_(UN)SUBSCRIBE_EVENT/DQEVENT: OK
        test VIDIOC_G/S_JPEGCOMP: OK (Not Supported)
        Standard Controls: 12 Private Controls: 0

Format ioctls:
        test VIDIOC_ENUM_FMT/FRAMESIZES/FRAMEINTERVALS: OK
        test VIDIOC_G/S_PARM: OK (Not Supported)
        test VIDIOC_G_FBUF: OK (Not Supported)
        test VIDIOC_G_FMT: OK
        test VIDIOC_TRY_FMT: OK
        test VIDIOC_S_FMT: OK
        test VIDIOC_G_SLICED_VBI_CAP: OK (Not Supported)
        test Cropping: OK
        test Composing: OK
        test Scaling: OK (Not Supported)

Codec ioctls:
        test VIDIOC_(TRY_)ENCODER_CMD: OK (Not Supported)
        test VIDIOC_G_ENC_INDEX: OK (Not Supported)
        test VIDIOC_(TRY_)DECODER_CMD: OK

Buffer ioctls:
        test VIDIOC_REQBUFS/CREATE_BUFS/QUERYBUF: OK
        test CREATE_BUFS maximum buffers: OK
        test VIDIOC_REMOVE_BUFS: OK
        test VIDIOC_EXPBUF: OK
        test Requests: OK (Not Supported)
        test blocking wait: OK

Test input 0:

Streaming ioctls:
        test read/write: OK (Not Supported)
the input file is smaller than 7077888 bytes
        Video Capture Multiplanar: Captured 465 buffers
        test MMAP (select, REQBUFS): OK
the input file is smaller than 7077888 bytes
        Video Capture Multiplanar: Captured 465 buffers
        test MMAP (epoll, REQBUFS): OK
the input file is smaller than 7077888 bytes
        Video Capture Multiplanar: Captured 465 buffers
        test MMAP (select, CREATE_BUFS): OK
the input file is smaller than 7077888 bytes
        Video Capture Multiplanar: Captured 465 buffers
        test MMAP (epoll, CREATE_BUFS): OK
        test USERPTR (select): OK (Not Supported)
        test DMABUF: Cannot test, specify --expbuf-device

Total for iris_driver device /dev/video0: 54, Succeeded: 54, Failed: 0, Warnings: 0

Fluster results for HFI Gen2 firmware:

./fluster.py run -ts JVT-AVC_V1 -d GStreamer-H.264-V4L2-Gst1.0 - 77/135
The failing test case:
- Unsupported profile: H.264 Extended profile is deprecated.
        - BA3_SVA_C
- Interlaced content is not supported yet.
        - CABREF3_Sand_D
        - CAFI1_SVA_C
        - CAMA1_Sony_C
        - CAMA1_TOSHIBA_B
        - CAMA3_Sand_E
        - CAMACI3_Sony_C
        - CAMANL1_TOSHIBA_B
        - CAMANL2_TOSHIBA_B
        - CAMANL3_Sand_E
        - CAMASL3_Sony_B
        - CAMP_MOT_MBAFF_L30
        - CAMP_MOT_MBAFF_L31
        - CANLMA2_Sony_C
        - CANLMA3_Sony_C
        - CAPA1_TOSHIBA_B
        - CAPAMA3_Sand_F
        - CVCANLMA2_Sony_C
        - CVFI1_SVA_C
        - CVFI1_Sony_D
        - CVFI2_SVA_C
        - CVFI2_Sony_H
        - CVMA1_Sony_D
        - CVMA1_TOSHIBA_B
        - CVMANL1_TOSHIBA_B
        - CVMANL2_TOSHIBA_B
        - CVMAPAQP3_Sony_E
        - CVMAQP2_Sony_G
        - CVMAQP3_Sony_D
        - CVMP_MOT_FLD_L30_B
        - CVMP_MOT_FRM_L31
        - CVNLFI1_Sony_C
        - CVNLFI2_Sony_H
        - CVPA1_TOSHIBA_B
        - FI1_Sony_E
        - MR6_BT_B
        - MR7_BT_B
        - MR8_BT_B
        - MR9_BT_B
        - Sharp_MP_Field_1_B
        - Sharp_MP_Field_2_B
        - Sharp_MP_Field_3_B
        - Sharp_MP_PAFF_1r2
        - Sharp_MP_PAFF_2r
        - cabac_mot_fld0_full
        - cabac_mot_mbaff0_full
        - cabac_mot_picaff0_full
        - cama1_vtc_c
        - cama2_vtc_b
        - cama3_vtc_b
        - cavlc_mot_fld0_full_B
        - cavlc_mot_mbaff0_full_B
        - cavlc_mot_picaff0_full_B
- Unsupported bitstream: num_slice_group_minus1 > 0 (slice groups not supported by hardware).
        - FM1_BT_B
        - FM1_FT_E
        - FM2_SVA_C
- Unsupported bitstream: SP slice type is not supported by hardware.
        - SP1_BT_A
        - sp2_bt_b

./fluster.py run -ts JCT-VC-HEVC_V1 -d GStreamer-H.265-V4L2-Gst1.0 - 113/147
The failing test case:
- Unsupported level
        - AMP_D_Hisilicon_3
        - AMP_E_Hisilicon_3
        - AMP_F_Hisilicon_3
        - DELTAQP_A_BRCM_4
        - IPRED_A_docomo_2
        - IPRED_C_Mitsubishi_3
        - LS_A_Orange_2
        - LS_B_Orange_4
        - PPS_A_qualcomm_7
        - RAP_B_Bossen_2
        - RPS_F_docomo_2
        - SAO_G_Canon_3
        - SDH_A_Orange_4
- 10bit content not supported yet
        - DBLK_A_MAIN10_VIXS_4
        - INITQP_B_Main10_Sony_1
        - TSUNEQBD_A_MAIN10_Technicolor_2
        -  WPP_A_ericsson_MAIN10_2
        -  WPP_B_ericsson_MAIN10_2
        - WPP_C_ericsson_MAIN10_2
        - WPP_D_ericsson_MAIN10_2
        - WPP_E_ericsson_MAIN10_2
        - WPP_F_ericsson_MAIN10_2
        - WP_A_MAIN10_Toshiba_3
        - WP_MAIN10_B_Toshiba_3
- Unsupported resolution
        - AMP_A_Samsung_7 - resolution is higher than max supported
        - AMP_B_Samsung_7 - resolution is higher than max supported
        - PICSIZE_A_Bossen_1 - resolution is higher than max supported
        - PICSIZE_B_Bossen_1 - resolution is higher than max supported
        - PICSIZE_C_Bossen_1 - resolution is higher than max supported
        - PICSIZE_D_Bossen_1 - resolution is higher than max supported
        - TUSIZE_A_Samsung_1 - resolution is higher than max supported
        - WPP_D_ericsson_MAIN_2 - resolution is lower than min supported
- CRC mismatch
        - RAP_A_docomo_6
- CRC mismatch - bitstream issue - fails with ffmpeg sw decoder as well
        - VPSSPSPPS_A_MainConcept_1

./fluster.py run -ts VP9-TEST-VECTORS -d GStreamer-VP9-V4L2-Gst1.0 -j1 - 206/305
The failing test case:
- Unsupported resolution
        - vp90-2-02-size-08x08.webm
        - vp90-2-02-size-08x10.webm
        - vp90-2-02-size-08x16.webm
        - vp90-2-02-size-08x18.webm
        - vp90-2-02-size-08x32.webm
        - vp90-2-02-size-08x34.webm
        - vp90-2-02-size-08x64.webm
        - vp90-2-02-size-08x66.webm
        - vp90-2-02-size-10x08.webm
        - vp90-2-02-size-10x10.webm
        - vp90-2-02-size-10x16.webm
        - vp90-2-02-size-10x18.webm
        - vp90-2-02-size-10x32.webm
        - vp90-2-02-size-10x34.webm
        - vp90-2-02-size-10x64.webm
        - vp90-2-02-size-10x66.webm
        - vp90-2-02-size-16x08.webm
        - vp90-2-02-size-16x10.webm
        - vp90-2-02-size-16x16.webm
        - vp90-2-02-size-16x18.webm
        - vp90-2-02-size-16x32.webm
        - vp90-2-02-size-16x34.webm
        - vp90-2-02-size-16x64.webm
        - vp90-2-02-size-16x66.webm
        - vp90-2-02-size-18x08.webm
        - vp90-2-02-size-18x10.webm
        - vp90-2-02-size-18x16.webm
        - vp90-2-02-size-18x18.webm
        - vp90-2-02-size-18x32.webm
        - vp90-2-02-size-18x34.webm
        - vp90-2-02-size-18x64.webm
        - vp90-2-02-size-18x66.webm
        - vp90-2-02-size-32x08.webm
        - vp90-2-02-size-32x10.webm
        - vp90-2-02-size-32x16.webm
        - vp90-2-02-size-32x18.webm
        - vp90-2-02-size-32x32.webm
        - vp90-2-02-size-32x34.webm
        - vp90-2-02-size-32x64.webm
        - vp90-2-02-size-32x66.webm
        - vp90-2-02-size-34x08.webm
        - vp90-2-02-size-34x10.webm
        - vp90-2-02-size-34x16.webm
        - vp90-2-02-size-34x18.webm
        - vp90-2-02-size-34x32.webm
        - vp90-2-02-size-34x34.webm
        - vp90-2-02-size-34x64.webm
        - vp90-2-02-size-34x66.webm
        - vp90-2-02-size-64x08.webm
        - vp90-2-02-size-64x10.webm
        - vp90-2-02-size-64x16.webm
        - vp90-2-02-size-64x18.webm
        - vp90-2-02-size-64x32.webm
        - vp90-2-02-size-64x34.webm
        - vp90-2-02-size-64x64.webm
        - vp90-2-02-size-64x66.webm
        - vp90-2-02-size-66x08.webm
        - vp90-2-02-size-66x10.webm
        - vp90-2-02-size-66x16.webm
        - vp90-2-02-size-66x18.webm
        - vp90-2-02-size-66x32.webm
        - vp90-2-02-size-66x34.webm
        - vp90-2-02-size-66x64.webm
        - vp90-2-02-size-66x66.webm
        - vp90-2-08-tile_1x8.webm - resolution is higher than max supported
        - vp90-2-08-tile_1x8_frame_parallel.webm - resolution is higher than max supported
        - vp90-2-14-resize-10frames-fp-tiles-1-2-4-8.webm - resolution is higher than max supported
        - vp90-2-14-resize-10frames-fp-tiles-1-8.webm - resolution is higher than max supported
        - vp90-2-14-resize-10frames-fp-tiles-2-8.webm - resolution is higher than max supported
        - vp90-2-14-resize-10frames-fp-tiles-4-8.webm - resolution is higher than max supported
        - vp90-2-14-resize-10frames-fp-tiles-8-1.webm - resolution is higher than max supported
        - vp90-2-14-resize-10frames-fp-tiles-8-2.webm - resolution is higher than max supported
        - vp90-2-14-resize-10frames-fp-tiles-8-4-2-1.webm - resolution is higher than max supported
        - vp90-2-14-resize-10frames-fp-tiles-8-4.webm - resolution is higher than max supported
        - vp90-2-14-resize-fp-tiles-1-16.webm - resolution is higher than max supported
        - vp90-2-14-resize-fp-tiles-1-2-4-8-16.webm - resolution is higher than max supported
        - vp90-2-14-resize-fp-tiles-1-8.webm - resolution is higher than max supported
        - vp90-2-14-resize-fp-tiles-16-1.webm - resolution is higher than max supported
        - vp90-2-14-resize-fp-tiles-16-2.webm - resolution is higher than max supported
        - vp90-2-14-resize-fp-tiles-16-4.webm - resolution is higher than max supported
        - vp90-2-14-resize-fp-tiles-16-8-4-2-1.webm - resolution is higher than max supported
        - vp90-2-14-resize-fp-tiles-16-8.webm - resolution is higher than max supported
        - vp90-2-14-resize-fp-tiles-2-16.webm - resolution is higher than max supported
        - vp90-2-14-resize-fp-tiles-2-8.webm - resolution is higher than max supported
        - vp90-2-14-resize-fp-tiles-4-16.webm - resolution is higher than max supported
        - vp90-2-14-resize-fp-tiles-4-8.webm - resolution is higher than max supported
        - vp90-2-14-resize-fp-tiles-8-1.webm - resolution is higher than max supported
        - vp90-2-14-resize-fp-tiles-8-16.webm - resolution is higher than max supported
        - vp90-2-14-resize-fp-tiles-8-2.webm - resolution is higher than max supported
        - vp90-2-14-resize-fp-tiles-8-4.webm - resolution is higher than max supported
- Unsupported format
        - vp91-2-04-yuv422.webm
        - vp91-2-04-yuv444.webm
- CRC mismatch
        - vp90-2-22-svc_1280x720_3.ivf
- Unsupported resolution after sequence change
        - vp90-2-18-resize.ivf
        - vp90-2-21-resize_inter_320x180_5_1-2.webm
        - vp90-2-21-resize_inter_320x180_7_1-2.webm
        - vp90-2-21-resize_inter_320x240_5_1-2.webm
        - p90-2-21-resize_inter_320x240_7_1-2.webm
- Unsupported stream
        - vp90-2-16-intra-only.webm

Fluster results for HFI Gen1 firmware:

Tests failing with the Venus driver, but passing with the Iris:
- H.264: BA3_SVA_C

- H.265: ipcm_A_NEC_3, ipcm_B_NEC_3, ipcm_C_NEC_3, ipcm_D_NEC_3,
  ipcm_E_NEC_2, IPRED_B_Nokia_3, VPSSPSPPS_A_MainConcept_1

- VP9: vp90-2-14-resize-10frames-fp-tiles-1-2.webm,
  vp90-2-14-resize-10frames-fp-tiles-2-1.webm,
  vp90-2-14-resize-fp-tiles-1-2.webm,
  vp90-2-14-resize-fp-tiles-2-1.webm,
  vp90-2-14-resize-fp-tiles-4-1.webm,
  vp90-2-14-resize-fp-tiles-4-2.webm,
  vp90-2-15-segkey.webm

Tests failing with the Iris driver, but passing with the Venus (due to
interlaced H.264 being not supported yet):

- H.264: cabac_mot_fld0_full, cabac_mot_mbaff0_full,
  cabac_mot_picaff0_full, CABREF3_Sand_D, CAFI1_SVA_C, CAMA1_Sony_C,
  CAMA1_TOSHIBA_B, cama1_vtc_c, cama2_vtc_b, CAMA3_Sand_E, cama3_vtc_b,
  CAMACI3_Sony_C, CAMANL1_TOSHIBA_B, CAMANL2_TOSHIBA_B, CAMANL3_Sand_E,
  CAMASL3_Sony_B, CAMP_MOT_MBAFF_L30, CAMP_MOT_MBAFF_L31,
  CANLMA2_Sony_C, CANLMA3_Sony_C, CAPA1_TOSHIBA_B, CAPAMA3_Sand_F,
  cavlc_mot_fld0_full_B, cavlc_mot_mbaff0_full_B,
  cavlc_mot_picaff0_full_B, CVCANLMA2_Sony_C, CVFI1_Sony_D, CVFI1_SVA_C,
  CVFI2_Sony_H, CVFI2_SVA_C, CVMA1_Sony_D, CVMA1_TOSHIBA_B,
  CVMANL1_TOSHIBA_B, CVMANL2_TOSHIBA_B, CVMAPAQP3_Sony_E,
  CVMAQP2_Sony_G, CVMAQP3_Sony_D, CVMP_MOT_FLD_L30_B,
  CVMP_MOT_FRM_L31_B, CVNLFI1_Sony_C, CVNLFI2_Sony_H, CVPA1_TOSHIBA_B,
  FI1_Sony_E, MR9_BT_B, Sharp_MP_Field_1_B, Sharp_MP_Field_2_B,
  Sharp_MP_Field_3_B, Sharp_MP_PAFF_1r2, Sharp_MP_PAFF_2r

Signed-off-by: Dikshita Agarwal <dikshita.agarwal@oss.qualcomm.com>
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
---
Changes in v2:
- Dropped OPP patch, applied by Bjorn.
- Dropped extra check for throttle clocks (Vishnu)
- Made iris_inst_fw_cap_gen1_ar50lt_dec and inst_fw_cap_sm8250_dec const
  (Vishnu)
- Renamed iris_vpu_ar50lt_buf_size() to iris_vpu_ar50lt_gen2_buf_size()
  (Vishnu)
- Link to v1: https://patch.msgid.link/20260507-iris-ar50lt-v1-0-d22cccedc3e2@oss.qualcomm.com

---
Dikshita Agarwal (10):
      media: iris: Skip UBWC configuration when not supported
      media: iris: Filter UBWC raw formats based on hardware capabilities
      media: iris: Introduce set_preset_register as a vpu_op
      media: iris: Introduce interrupt_init as a vpu_op
      media: iris: add vpu op hook to disable ARP buffer
      media: iris: Add platform data field for watchdog interrupt mask
      media: iris: Add platform flag for instantaneous bandwidth voting
      media: iris: Add framework support for AR50_LITE video core
      media: iris: Introduce buffer size calculations for AR50LT
      media: iris: add Gen2 firmware support on the Agatti platform

Dmitry Baryshkov (6):
      media: iris: skip PIPE if it is not supported by the platform
      media: iris: add minimal GET_PROPERTY implementation
      media: iris: update buffer requirements based on received info
      media: iris: implement support for the Agatti platform
      media: venus: skip QCM2290 if Iris driver is enabled
      media: iris: constify inst_fw_cap_sm8250_dec

 drivers/media/platform/qcom/iris/Makefile          |   2 +
 drivers/media/platform/qcom/iris/iris_core.c       |   4 +
 drivers/media/platform/qcom/iris/iris_ctrls.c      |   3 +
 drivers/media/platform/qcom/iris/iris_hfi_common.c |   4 +
 drivers/media/platform/qcom/iris/iris_hfi_common.h |   1 +
 drivers/media/platform/qcom/iris/iris_hfi_gen1.c   | 229 +++++++-
 .../platform/qcom/iris/iris_hfi_gen1_command.c     |  21 +
 .../platform/qcom/iris/iris_hfi_gen1_defines.h     |  15 +
 .../platform/qcom/iris/iris_hfi_gen1_response.c    |  78 +++
 drivers/media/platform/qcom/iris/iris_hfi_gen2.c   | 613 +++++++++++++++++++++
 .../platform/qcom/iris/iris_hfi_gen2_packet.c      |   3 +
 .../platform/qcom/iris/iris_platform_common.h      |  11 +
 .../media/platform/qcom/iris/iris_platform_vpu2.c  |   6 +
 .../media/platform/qcom/iris/iris_platform_vpu3x.c |  10 +
 .../platform/qcom/iris/iris_platform_vpu_ar50lt.c  | 118 ++++
 drivers/media/platform/qcom/iris/iris_probe.c      |   4 +
 drivers/media/platform/qcom/iris/iris_resources.c  |   2 +
 drivers/media/platform/qcom/iris/iris_vdec.c       |   9 +
 drivers/media/platform/qcom/iris/iris_venc.c       |   9 +
 drivers/media/platform/qcom/iris/iris_vpu2.c       |   2 +
 drivers/media/platform/qcom/iris/iris_vpu3x.c      |   6 +
 drivers/media/platform/qcom/iris/iris_vpu4x.c      |   2 +
 drivers/media/platform/qcom/iris/iris_vpu_ar50lt.c | 156 ++++++
 drivers/media/platform/qcom/iris/iris_vpu_buffer.c | 414 ++++++++++++++
 drivers/media/platform/qcom/iris/iris_vpu_buffer.h |  38 ++
 drivers/media/platform/qcom/iris/iris_vpu_common.c |  17 +-
 drivers/media/platform/qcom/iris/iris_vpu_common.h |   5 +
 .../platform/qcom/iris/iris_vpu_register_defines.h |   1 -
 drivers/media/platform/qcom/venus/core.c           |   4 +-
 29 files changed, 1777 insertions(+), 10 deletions(-)
---
base-commit: e98d21c170b01ddef366f023bbfcf6b31509fa83
change-id: 20260507-iris-ar50lt-06228469aa5b
prerequisite-message-id: 20260209-iris-venus-fix-sm8250-v5-0-0a22365d3585@oss.qualcomm.com
prerequisite-patch-id: 8948139735836adb9fbc51d93b969911dc5b38e8
prerequisite-patch-id: 7ec91bd0149f347c479c906e73cabaa28601ab3d
prerequisite-patch-id: c711522b63f640b7504767b3af7adc05a0b36cac
prerequisite-patch-id: 42b9cd5e0fd6fd99eae267c78b239333adff7637
prerequisite-patch-id: 11c487545e2462ff0a515d689863c3f7f25f9449
prerequisite-message-id: 20260327-venus-iris-flip-switch-v5-0-2f4b6c636927@oss.qualcomm.com
prerequisite-patch-id: 579d712ec3f942ba0c362e242c71361c151092b5
prerequisite-patch-id: fa4629a3909fbae3917d8c067cce4f673ee857c0
prerequisite-patch-id: cbbd40736f7a797ff76b0fe2b1ddfb559e14e666
prerequisite-patch-id: 5b50917dcfef01db13af320cbd1cba15fd5fa16f
prerequisite-message-id: 20260507-iris-ubwc-v5-0-e9a3aee53c49@oss.qualcomm.com
prerequisite-patch-id: af2ff44a7b919da2ee06cc40893fbcd3f65d32f7
prerequisite-patch-id: f3a2b9ef97be3fa250ea0a6467b2d5a782315aa5
prerequisite-patch-id: 6bdd2119448e84aacbdc6a54d999d47fc69dac81
prerequisite-patch-id: 38cc9502c93c71324f1a11a1fd438374fc41ca84
prerequisite-patch-id: 059d1f35274246575ca4fa9b4ee33cd4801479d1
prerequisite-patch-id: 1cf4ea774a145cdba617eb8be5c1f7afe5817772
prerequisite-patch-id: 46375dcd0da4629e6031336351b9cf688691d7c5
prerequisite-message-id: 20260329-iris-platform-data-v11-0-eea672b03a95@oss.qualcomm.com
prerequisite-patch-id: 34d473ba50399f8cfaf583f4def12de776aad65d
prerequisite-patch-id: 5a6a2b41c9312687512db5d12bac95114b8d8719
prerequisite-patch-id: e6ec4cd9eb5e93f3443f5f496a1b990a95b5d96d
prerequisite-patch-id: 4be4bbb454444d6f314c2b6ad6a73290184e6d57
prerequisite-patch-id: fd9cd7882f2a8f1b6141f48ff5c3da708839d03f
prerequisite-patch-id: 952471fa5477280d399978c05fbc9bfe6d2d33b0
prerequisite-patch-id: 01c5b37358de833f85de1954f770fe0489818a16
prerequisite-patch-id: dd14b47d6cd8ff14d1bc78c187c061f6fe262fda
prerequisite-patch-id: f4eba0865e7f91bce3fb4b2c627ee123980e0ff9
prerequisite-patch-id: 72984784b916e2d94ede8ab7d52cc0dedfa37c41
prerequisite-patch-id: 2fabf4e36b4e4f74b27fe75133ab8ba0ec9b6e3d
prerequisite-message-id: 20260330-iris-remote-fmts-v3-1-a26ab9e90101@oss.qualcomm.com
prerequisite-patch-id: aab511a6975936fb0198697fca7b61cc2277e1b4
prerequisite-change-id: 20260429-kodiak-gen2-support-v4-a7f055f15afb:v4
prerequisite-patch-id: 59198edc95aca82a29327137ad2af82ec13295b6
prerequisite-patch-id: 8932e170649711d7a80c57784033a37faadd519b
prerequisite-patch-id: 91c7b1851c5d77e504c49ce6bf14b3f8b84e826a
prerequisite-patch-id: 46b08bef236f757b0fa29e3a36118c7fe4561c24
prerequisite-patch-id: 8616366b9142c0f446ec21f96ee16692bee13fb2
prerequisite-patch-id: dab840223ff6f3eda75db29f415c12f7de5751c9
prerequisite-patch-id: 431abbba068358e8c8ad9341e2d27cd6caa329f0
prerequisite-patch-id: f6300048c61bdded0d7fcfc6547e0cb1ce06217f
prerequisite-patch-id: a24b2f13779de8a093bf4018f477c7b55079af1d
prerequisite-patch-id: b9011be775c23e3c4bd51eacb6329fc1bd09539f
prerequisite-patch-id: 33fa76ea129bec00bc23cf332636e19b18da8003
prerequisite-patch-id: 21debb2538e2b31cac455326c8c75f4d26733f17
prerequisite-patch-id: db33ad1b037a44c36196e4327294efac1b35349b
prerequisite-patch-id: 3cb8e534eecd3e5a7d8d2c00ed8746ba676f7431
prerequisite-patch-id: d03952183f87b7ea16b0ec3c024f81e50087c687
prerequisite-patch-id: 2dc44ddc15323f4d21beda4aeb2008ffbd05b884
prerequisite-patch-id: e3288c109408fbda3246f19247ee7e4ac772c988
prerequisite-patch-id: 0c72389b3caaa491f6e576f00939e0981bc111eb
prerequisite-patch-id: a08981f3e589808000eaab1fe3a0b33bede20cf8
prerequisite-patch-id: 98f6620803a2df153d2dbf38cfa03ced41fcc063
prerequisite-patch-id: c943cf9aa78336c65a00c4e7138905cbbe00e17c
prerequisite-patch-id: 8c30a7f0e909c6defec8b04846c8357aaa35559c
prerequisite-patch-id: 39f3767914eb3bad530fa88726c454c35cd6d9e3
prerequisite-patch-id: 7db7963ebd5a9357a327f1388c278c8f223fcb6a
prerequisite-patch-id: ebab2fc45b2348bed84f19d60012447cf14fb505
prerequisite-patch-id: 2c43e1c2cb9082174fa980454d3a5d82f2a24517
prerequisite-patch-id: d92cded782baf154089db29b2de4e27f667ece25
prerequisite-patch-id: d8f09e4976ce97e5c7cfd7bd6224aa774b32c794
prerequisite-patch-id: 4f12d507f436c63bbd1825ba2391dd7507d9ec54
prerequisite-patch-id: 11686ca10a1013d88af3f523e793dc1085a97316
prerequisite-patch-id: 2bb69093d80ddba3fb2bb488855ad4357aee0b4e
prerequisite-patch-id: 4873d3ded034ace320c9de40a2d6d880d25a75e1
prerequisite-patch-id: 59c00a82cd984b60c86a78726622b19d2fe397e2
prerequisite-patch-id: c0e076776b982423bde5ae1b693b328df0caf7f2
prerequisite-patch-id: 5407bf0f586d03701f05e89bd6ae1069cdf29bc6
prerequisite-patch-id: e9d4771ab212ef989ec8bc02893092ef7822e852
prerequisite-patch-id: 5e442dd82ce2b5e13b18b4fce7ec7d0c78f84f45
prerequisite-patch-id: 2f470cf849bae1f85f0f527fe0c119a1a2e935dc
prerequisite-patch-id: 40f3981e70b0aed918da52e12dacaa41ad0f24df
prerequisite-patch-id: b1a31ca2efc429802c87b6ce9a2372ef5a481ed2
prerequisite-patch-id: 23a90ecf0881dfe3dff59a41c773ea84f9996fe5
prerequisite-patch-id: dd11399efcca6569fbf54259afa4bc71d920bf2b
prerequisite-patch-id: b33e48c6506ef29ed48552e62984861b9e12fb86
prerequisite-patch-id: 3c016cec8fa87b38840b429aa8b15df85010fc9e
prerequisite-patch-id: aac444b63f07ab8d5717aec15b17abb9cbb815f2
prerequisite-patch-id: 6f0b34c19c9fcab13a2b70e10bc02176d192f3c4
prerequisite-patch-id: c54ff9f603bd3e060ade614ff484727bb3008b65
prerequisite-patch-id: f1cd37d52ec539f80cfb4757edc80ea8d0ba9e73
prerequisite-patch-id: 520d5996b9f59074d8c3b45159a2868b57eeecc3
prerequisite-patch-id: 37c98828907c0330f746663d2c003274a67365c8
prerequisite-patch-id: 02d473b340d1388da8e5f2a58ef13352a9748d83
prerequisite-patch-id: 6ee9808e42a06bf7550ef2b2fadafa90e7de3911
prerequisite-patch-id: d4238f97a3bd7e617832bb08c83465d16ddbcf03
prerequisite-patch-id: e64b989633a1d5bec6a0e69d78a7636a30701218
prerequisite-patch-id: 6f04c6c57409b0e16f5470cb27210189f5306478
prerequisite-patch-id: 88409d16927f6b711f7c448923e0747fae40b833
prerequisite-patch-id: 625e6cad12da439f5e3422833d8c759197b6ddfc
prerequisite-patch-id: 6c30459029e9d994270e2b9b5cfcc79b186d8547
prerequisite-patch-id: ff4612b8ddfbeb45081f0f71ee4aa2a8b463da65
prerequisite-patch-id: fb1795eef28f8f255fe1b839595dc715ba606c22
prerequisite-patch-id: 6a5570daf0a42418ca6470f85c54d1d6ac8c65cf
prerequisite-patch-id: 3088481c5fc19ec8d255016accb10691923e2bd4
prerequisite-patch-id: f4ba8b0375f6f40eeda421222f8d0b45f6809855
prerequisite-patch-id: 9bc1f1199e523c1f90597a1035e097cc66483656
prerequisite-patch-id: 8021efeb2048a6cb82bf4ad5094f3f54a0dd0a99
prerequisite-patch-id: bc517aaca4e1f159d24b0340be4a81e11e08a0e7
prerequisite-patch-id: 97702d2544a68fc9aeccd41886a96bc4bd2ff3d1
prerequisite-patch-id: c62935836bacab78ac6d5bd45c7f97447618a6a1
prerequisite-patch-id: 51dd787b4493e946e2b2b40550d18b51a4d4965e
prerequisite-patch-id: b4fd56babcb9f4ee0a6cb7f3b1fc67690764cfde
prerequisite-patch-id: dfa7cea90ed604801d0d67fc2761cef34d549b75
prerequisite-patch-id: 0e80d136a85200bba1eaa4380f75473467b2ba72
prerequisite-patch-id: 050cd0bd6192e5f2cae6ccac4fdd509e8b44330b
prerequisite-patch-id: f8a744e41c3d62c5fcf2af0775b82bd79bda7d8f
prerequisite-patch-id: 0c4108eea453fb05a64fb4395bc0c819ceb05610
prerequisite-patch-id: 00f162b544be0576db83c4f301d2ccc8e5cc4a81
prerequisite-patch-id: 09d4c821f21bcf106170ef79213ed2301ddd5428
prerequisite-patch-id: 204526a0899a1f076622bfe03a86171ef870ff83
prerequisite-patch-id: 1bd7d6eedb2ce5fdbcef6313dec2504f9c982e42
prerequisite-patch-id: a0e62a4a6f5b7eb42f4bc83d2e43424589911d0b
prerequisite-patch-id: 83cec30ae703cf690345948de43294e7f3adc61f
prerequisite-patch-id: 79980e6a911b7289dcf96b9b30d127c05ae2b00b
prerequisite-patch-id: 3fbb295f966c209d6d14e3390927580771ff8d3f
prerequisite-patch-id: d5e0150ed64199733170ba1fd1b1cf9ee01268ad
prerequisite-patch-id: b776c6c9fcc772211d2dcdc626033e853c3b3c28
prerequisite-patch-id: 090ab51b6020c965cf37ef280bbf0b2ec0ea3ad0
prerequisite-patch-id: d94bdf5b1ba334122ffc6e7524bf147f6e768c10
prerequisite-patch-id: 267c7c808314656cfc4e4708ea4ed73471d9bcff
prerequisite-patch-id: bef5ba105ab582d1358fd9b3e0d5c34db7d255eb
prerequisite-patch-id: 5502e1abc46eb508e53905d6502d749437d37982
prerequisite-patch-id: 949c7d5902c4b3668ef55cf9ee7dfc726d4adc01
prerequisite-patch-id: 47733bfa07e3c2aeeae9fb9df1bd4a5bf194adfa
prerequisite-patch-id: 3c6ddfc285e3d405a88889bc24bbc44d5919b34a
prerequisite-patch-id: b4c30aeeacf69ee3dcc7912dad4fa809d60bef21
prerequisite-patch-id: 61c76ec3255db32fdaa2c9addf829b1fcb543333
prerequisite-patch-id: 48812ebab5123002b4ea1465320339cea91d4cc3
prerequisite-patch-id: 4b04cb96b017e3b91d43e2b6dce2753336532b8c
prerequisite-patch-id: 340cbd329eecc7c8c8bb01133dfde306b852bf3d
prerequisite-patch-id: 1b9dcead0713e0d7d72e145d54a3f2e0cca68feb
prerequisite-patch-id: 27f91f6f819e01d1b50cd6add5264f54dad7b5ef
prerequisite-patch-id: 84e75e9472123f7d892227feda8925967023e5a7
prerequisite-patch-id: cc8f2bd4a027ad60d8b94264b6f6a359e93356a6
prerequisite-patch-id: 65d177dbd6998bd18f5d579e210289c8d6d86a80
prerequisite-patch-id: 3ddbfee42426b0c9f3fb8d38cad7b7d456841689
prerequisite-patch-id: 080c7920ccc4fb729a9557acabf43d7f787bf249
prerequisite-patch-id: f0fde7dd29838bb99025da07587e77bcb63e2c54
prerequisite-patch-id: 2bd3472e4629292f768ffa5e39b6c687fcb99826
prerequisite-patch-id: 0bfdc6651d2b6d3a9956ddacb140fd5688033971
prerequisite-patch-id: f48e971e2965339a86c2a2c5fcf5fd1052ac749f
prerequisite-patch-id: 78936758f5eb23504c61b88a16d9a810563dc4e7
prerequisite-patch-id: 9d9c3d8165e9c267c2e9fbf8adf3be3fd30e2775
prerequisite-patch-id: 2a69d5a9268925ce199105e870763f8652ffc49b
prerequisite-patch-id: 7ed7d83e721cca7b0e6a30c270f938f932f12ffa
prerequisite-patch-id: 1da342bf49664bd907e46407227a1cbab6a0729c
prerequisite-patch-id: 7c64a9d6f0f49cc117bdcb374025ccae890cc621
prerequisite-patch-id: 276b7c8c7d799e0ae56a4873ecdae04f3697be8a
prerequisite-patch-id: 54c177af45646467ba4b507ced2703dc63272bb1
prerequisite-patch-id: 7bd1a3037ef1f002249054848c31b1095ff94e29
prerequisite-patch-id: 47454a52efa9a6b86a01824f2248ded39b0592fc
prerequisite-patch-id: 23fef733267200092a9959ac47e7d600c732b8dd
prerequisite-patch-id: 937a96b6abcc163a3aa311f5ccceaf265ec5ff54
prerequisite-patch-id: 9f5677bdb7d0e9c6738f689af980fa83c9b0166b
prerequisite-patch-id: 29e2e9eb27389a9f94caec8caffef3fbbc5b7655
prerequisite-patch-id: 7b4d2322e3ee7f37685dc2168dde5d5ba2ef8092
prerequisite-patch-id: 07e39e759f4e77a974830baed4b0c9a5815e8448
prerequisite-patch-id: 12fe1a6395228a1a3f9219d57ae7c1e9001b035c
prerequisite-patch-id: adc9ea86209871a271a847d315efcb6c430f9880
prerequisite-patch-id: 59a4c405a695d16464e0539b79ddf1b53387bdb9
prerequisite-patch-id: 125a1299d436352b209ad06c9da4f05cba43e749
prerequisite-patch-id: 9941be297c2243c155ff7159297179e91473c80c
prerequisite-patch-id: e2645ae1ca77cea0748e5253328c2993c57f48a2
prerequisite-patch-id: bd17200e0b1460363c4e6800c7d48449dcc288e1
prerequisite-patch-id: 136301857564348fa295396dabe65309bb9d9229
prerequisite-patch-id: ce14d044106c6f8564b14489c81efd298f72967a
prerequisite-patch-id: 50a32e8c65a86f0f39fad5f80ee11c7ad1ca1d06
prerequisite-patch-id: a37eac635d8d0330870ee606df013c617a304997
prerequisite-patch-id: 15370f9280a3e43464e3cf1da32a0a9672864773
prerequisite-patch-id: 74ec9623dc69635213bad0a2c501318b729d6c93
prerequisite-patch-id: fa608738239100e6bd95624aa13159cc909b8543
prerequisite-patch-id: 66242fc868ca478e72a7b499052c264e7645e285
prerequisite-patch-id: 11e8f271488b78e04168358bc026fa74e331b5d3
prerequisite-patch-id: cdda2ce8c6fc698da05527f5ee7aee8b1d1ecd4b
prerequisite-patch-id: bc46d4c91c78f93a4ca873feaa2c53cd11bb4b81
prerequisite-patch-id: 6a1e01e9125e60c70887ff71116741d41e9c02c6
prerequisite-patch-id: ec347e887dd10d0254aca592f20a0c44f317884f
prerequisite-patch-id: 9104204a1d7a1dd1db4faa9d50896684201f8146
prerequisite-patch-id: 08fa210726f6d74f1004fc2376ff3ec324e249cc
prerequisite-patch-id: ab8c8f3245ee1366a0ac80e1bbad6cf6ba297136
prerequisite-patch-id: 1cdecb86b600d85114af96cbf5c76b598397f8cb
prerequisite-patch-id: 6b90a4c70119989ca0a53eb0b92a686a327e3773
prerequisite-patch-id: b7961da9dac612bad50124fef4c4682c20e6a3b8
prerequisite-patch-id: 84928f5b1de8964a56c1e99ee756f49b50be2c03
prerequisite-patch-id: 2070ee93871f0a38e014e65fdb76f51414078ea7
prerequisite-patch-id: f17e14d6801fa1bcdd3949d592b38c783e84cbb5
prerequisite-patch-id: 2f64c477e520f84473f8290cc5df027fa85879ad
prerequisite-patch-id: 27a5be42fd773fecd7a0c922cc59aaba39ce53c5
prerequisite-patch-id: 8e6d2e0e7000ab3f2bb4e00eb136b3023655ea3c
prerequisite-patch-id: 2d1f08593eaa3d616f5b641d0be3f5ad532df372
prerequisite-patch-id: bce081ad5106e0ace46575c83538c3047947caa2
prerequisite-patch-id: db7be84d8ddb74c198c0ea575e621690222793c3
prerequisite-patch-id: b65dd5ea0c1e2d99e353928785d955254caa26cf
prerequisite-patch-id: f9edb2cf309e91ca88d7077e78444c6e59489482
prerequisite-patch-id: 98cbe73ce8dde3a147c26c723b41d03eb3713e27
prerequisite-patch-id: b04a85bc56f52603bc9e36f6b795454ce35f457e
prerequisite-patch-id: 2ff46bad4be9aa586fa93ccdf3d03adc6b16bae9
prerequisite-patch-id: 8f74f8de080b83fda72d48c8ff41000824832819
prerequisite-patch-id: dc234cef5a68e048e764922e2b60de703161bddb
prerequisite-patch-id: c290956e421efd1d87f5e548baba810b2612a987
prerequisite-patch-id: d7c8131af70e9435bdc5bc4b72eae4ee546d8a37
prerequisite-patch-id: f676c2a9966ae86390bdb153f1e6b3c7b96aa24e
prerequisite-patch-id: 5ee84152873e51d156f02264c320afa4e0cb1f9a
prerequisite-patch-id: 5f4ff90c9dc54d7f145336214d6cf5ac415edc6a
prerequisite-patch-id: 545f3fc502079e42187c7606b70c63fc7109a68a
prerequisite-patch-id: 7c7fb9f87dba019ece4c97c45750349a7cd28f3a
prerequisite-patch-id: 0da941baac12dd9057d923ff07a3931faa5884a9
prerequisite-patch-id: 3f809eb25ccfa3d588e282e9eb987b66d855741e
prerequisite-patch-id: 51328801090e42dc20cbc034e64c07607d2a37df
prerequisite-patch-id: 9d2639f9d506e6ca5dcdd6556fe7a36d46ec5586
prerequisite-patch-id: 02e17b0f6a0c51cfecb39669f50a06d93c44564c
prerequisite-patch-id: c86e71ed9e50830cc84fde99810947e03ab49b0d
prerequisite-patch-id: 1f5a1dee657c7f0eefdb959ea8ae11e527b77118
prerequisite-patch-id: ef4610dc26568ff6e7b30391b059da6f90d23f4d
prerequisite-patch-id: 442de3d9b201331b23a140a4fa42e4fa9f75efb0
prerequisite-patch-id: de904f1123a14bd020526d1dd46b3654b5fba571
prerequisite-patch-id: 60cc84d2f1c3b5256e4ea17667da7ce8767c5eaa
prerequisite-patch-id: d843aac637849372479aa5f0dedfcf80fe76a1f7
prerequisite-patch-id: 4f4df13c5629cd0924f9c8f7a79c79a5df6f28ba
prerequisite-patch-id: 31c3dd4f27a45ed1b701ff897e9ec8dc46297b90
prerequisite-patch-id: bfdcb413f497059a3ee50e2d3e97d2cf474a0328
prerequisite-patch-id: 239fc4cbd8223e71bbb3782133cf99d1d241414a
prerequisite-patch-id: baa1f288f06dc63c613a9908db5b0ea866e2d768
prerequisite-patch-id: 4cd198d0dd32f953249b78d3587a8b5bd8c7f215
prerequisite-patch-id: 298d230be07dab7f3d2038dee766b4bb1ad623a1
prerequisite-patch-id: b022ec2a1def5ab7c298043c304bee836d72671c
prerequisite-patch-id: 936aa4a5bbb90bb60317f4ee9f7a05d27e1e3a85
prerequisite-patch-id: 5944b7841c206dcbc6b2318a497deae82558c5ca
prerequisite-patch-id: 0497260fa0aef9831f5aae374e4584c46ea777b0
prerequisite-patch-id: bf05b6924571bca3d85b1539c25acf3c0cdd40a2
prerequisite-patch-id: c7006d9b4e1a216b040a139e7604737cfab425d9
prerequisite-patch-id: 0fc8f53cc5a0cdbb0d954dadf378bd79b5503b1e
prerequisite-patch-id: 6dfa788f084b9131009c30518f4448f4d96120e1
prerequisite-patch-id: 5dd0c43a6e66e6fd51ca8fa0a4399ad217f36bfe
prerequisite-patch-id: 797faa8a5da23568e35dc8860818b9018910e2e9
prerequisite-patch-id: 3bc805064c9e12a57373e2990d62b3e653013674
prerequisite-patch-id: ce51ba75fe6eee41f597660df2bc7222333e1cd8
prerequisite-patch-id: df830e75b3076e9ff2b7b4d731759904c166f68c
prerequisite-patch-id: 52dccf6eece77ea32ced3821888f9a671bb93e43
prerequisite-patch-id: 6fd5fb52f37b0513bbbc4d9c06a4a902da208c5e
prerequisite-patch-id: 04cf2a4f60e6d0c0c99f6185e82773254baf9b5c
prerequisite-patch-id: 861e9de3988bf570ca8718b1eff37b47ad174d71
prerequisite-patch-id: 587d0b2ec622a5fe3c54f38d3a214e5b04fba74c
prerequisite-patch-id: 3394d2a00319e29d7f4f8d30a5aaf46e6dabd176
prerequisite-patch-id: 8a87141e021e1888d579c7b774709ba27e9029a4
prerequisite-patch-id: b142978a6b136b8a091268195cce8d0da0ad6213
prerequisite-patch-id: 4e91651f5ed8cf1fd678891f43a4a203f66ce340
prerequisite-patch-id: ac45e5b61674d72455145eee8a615f165ff7c4cc
prerequisite-patch-id: 720ad10bf2c2c88809139876f6bd48374ca4ae63
prerequisite-patch-id: e4a708d9c6df5725c9598fbd2169636e4e7dc46b
prerequisite-patch-id: c7e6861b989d76b0be96e6534afcfa275a2c8da7
prerequisite-patch-id: 23cf3338102440a65e439ec608bd1e772e3a7183
prerequisite-patch-id: 0a0629e57565357bfb3daaf9173c8ab0bc24acee
prerequisite-patch-id: afb97c6e17d2a49746d066f33d00a9e44a7774a5
prerequisite-patch-id: 2d0d925476026f8044f9a979ae8a6982c692ceb9
prerequisite-patch-id: 4148d1eda25bdbcc3f1527ef45f36911debf600e
prerequisite-patch-id: adc317b05b9258251a5706e6fc76d9aa079ab761
prerequisite-patch-id: e3088a1652a34de32a65dbf2141c08b9c1ec8787
prerequisite-patch-id: 3dda7a6ce0b2145b68a40bc6d9b39d2e15162893
prerequisite-patch-id: 95ddae496ca7376f5edad486503d6c284aeea292
prerequisite-patch-id: f1fc2564504db131669ec0f050105d636902e5d1
prerequisite-patch-id: 40ce455b69cfe1572fdda1c0f883529a029671fe
prerequisite-patch-id: 2955563f733de0bc6f2286673aca3607d20bea16
prerequisite-patch-id: 96ebac57bb29619b97fe95422206a685825618e9
prerequisite-patch-id: 59870578b3dca4ed1d191b7912ac940138cc4f79
prerequisite-patch-id: 9317918d1bfb28acf0075b04cffdf353d0a5ceee
prerequisite-patch-id: ae0d33db3e4315684dc5924d2e56e0d01e695392
prerequisite-patch-id: 3fbcfaccb90e56862dceb48b5ce0a000d3cf2320
prerequisite-patch-id: 0563726ccf99d18c9423d6b7d9df247ea5a45065
prerequisite-patch-id: a2b3d4a99fc974b5e8cfe43f50ed1a0ea5b57e47
prerequisite-patch-id: 5cd956d805ff51ada5b8136e4d121867b5c54047
prerequisite-patch-id: 2c1fe8771a08d2e1179b4217c953fbc898661fbe
prerequisite-patch-id: 565ceb0eeba369b8eafe30dd0206aef8baf5d645
prerequisite-patch-id: 80a4aaf6dbac81e53da575e6ebac744c1e6e99d8
prerequisite-patch-id: 447fbae1ae5d262319638c8d0c1a89f4a6723d1e
prerequisite-patch-id: da4c9750ccd81284bb3c8579c10991599819419c
prerequisite-patch-id: 729266e272e217f8b4162c89acdd54d3fc9d3673
prerequisite-patch-id: cbc5f492006bf591d66314823afa2e68f38d9ebe
prerequisite-patch-id: 4cbc6d0f4e3057996feaa7e82aec8ff7bf920e70
prerequisite-patch-id: d7f044de2dcd400b3deccb23fd2878cac353d19d
prerequisite-patch-id: a1553e4b1b398c8767433fbb4bc955788abdaac9
prerequisite-patch-id: 195859594279443f4e9872d8e5e6f2fdb3be327e
prerequisite-patch-id: d31efa53ac22d10626de91dc663e6342e6ef59d5
prerequisite-patch-id: 8b7d1e6c4f22456467ea5ff64b9aa80e3d932a4c
prerequisite-patch-id: 1204361241a3b6c7ffe6564855d1e85e3f55b07d
prerequisite-patch-id: c9469fd6a8708f3ab495c50c1eb49dcc68832410
prerequisite-patch-id: 14e5d07815f02792a11efa0e62af8caa88ef5319
prerequisite-patch-id: fe02806df1fe45fbfaac9daf8ca302ac1a421146
prerequisite-patch-id: 8b156650c03f1a604a5a2324ab36e03e15d552fb
prerequisite-patch-id: bfc98ce533ccf8ec86981b1e914c5b7742368b43
prerequisite-patch-id: 82b4d6edaac138fc0e3b3fcd3672dbfe977ab2bb
prerequisite-patch-id: 13731e26f2693dfd219c5fc3c443ca705567049d
prerequisite-patch-id: 809d98501f91fee97255af768dc35af91b29c30e
prerequisite-patch-id: 0a565746e8566d24a13a510ec64df896e6ece158
prerequisite-patch-id: f5052c60298095a593dcd28ffa9e03e180159f45
prerequisite-patch-id: 900d5c1d52907120cbc31f576d9ccbf2479b0dde
prerequisite-patch-id: d771c4324bd598c44d1a23032ae8291d10e5a507
prerequisite-patch-id: 0bcc15f4c8df5ab410600cd61e92493e1abaeee3
prerequisite-patch-id: 97c0fa06fe4e588afe148b0657dbd8b12381be24
prerequisite-patch-id: 00e070b3f197e4b103272b080966a1dee27c7dce
prerequisite-patch-id: cd288132a50e2785cedc5ddc8b79aa31cd1b4556
prerequisite-patch-id: a6c912aa54f03e017bc66f7cd4c64206b6690588
prerequisite-patch-id: b017a5d263f7cfdfde1803e9b8d1cf582ebf4320
prerequisite-patch-id: e92419f3869bb7031951d4e245ee25a7b095ecd9
prerequisite-patch-id: 6196d2821ee0e4adb732771ad77e606c7e5b4b87
prerequisite-patch-id: 7ce570a29b86c648d85218205e7465518a33bbc9
prerequisite-patch-id: 6160daa76afb226ffbe6ccfa5ce33bfcb9b6aa7d
prerequisite-patch-id: 1f56a0648b056dafa7f52f3b0a3981b982e54087
prerequisite-patch-id: 92fa25b1bcd464a9eec2995a19fa3c6a58366f15
prerequisite-patch-id: 3152a6bcc17d23b63cc12038e11f42dff8505c24
prerequisite-patch-id: c3ca596103ce1f44268229d65da563fd046cbb3c
prerequisite-patch-id: 4f8bf399d77c4106c17baa41635f95a27ac498fa
prerequisite-patch-id: fdf77a77d2714471b7de4823990971b65b71361a
prerequisite-patch-id: bcbc331305bd284e718c5c3258d67a6bdcc67921
prerequisite-patch-id: 4d38e73279deeec17922980755eb79394ae39dc1
prerequisite-patch-id: 99fd903badaccfda3fa098f5db5228b287220f6b
prerequisite-patch-id: c821fcce8c24829daf5f85e8204805076ff7378f
prerequisite-patch-id: 83b58a31c2b1815a8dc94c34c60a9d3a4c5fbbc2
prerequisite-patch-id: 97af6e288d3a0695e5798a61eef948299d976b7a
prerequisite-patch-id: cc9a81d469a817f311b781720d6d002d6a736a85
prerequisite-patch-id: a849ed7773a7c420772cc169b81e2518cfba8f43
prerequisite-patch-id: 6690e42fd26b20f95b114d9d9fa575963c18a410
prerequisite-patch-id: d602218d9833386e5aee7e63b52f1dd5d1aadce7
prerequisite-patch-id: e4d139aa27c0f35f6a518349ba54dee9eff19685
prerequisite-patch-id: a58d2e7aa515189c9d526cf09c89f0ae569a17c6
prerequisite-patch-id: a37775689f69f6befd9b8e0c560b203c9e9f79bc
prerequisite-patch-id: 8ab1b18beae533d2cacf7dee560dc191891f342d
prerequisite-patch-id: 0320a3a7ce243f6c231bcdab672d16da3344f9df
prerequisite-patch-id: a0b2c31cb34f92b6dbf771e123c41d69b6bb0c89
prerequisite-patch-id: f6c1dd497c7c82904519ce37d8706defed79111f
prerequisite-patch-id: 5901f2d0fe09b3a1eb016609daf286faaea4af76
prerequisite-patch-id: 043c56848d0a7409c960cb969882fb2139b1094a
prerequisite-patch-id: 7b106b4bc491747237b75c9364a500eb8cfd31a0
prerequisite-patch-id: 0fabd60d739c45e76d4fb87cc008697f92e7164e
prerequisite-patch-id: 83fa7afd2c83f62058b212e93cfea72596389f76
prerequisite-patch-id: 145833e2f270b51817275764d5a578addf6f3709
prerequisite-patch-id: c28d7707942a1ffb71577a851fb8e19cefeefb77
prerequisite-patch-id: 1264cc14047e2ba248662abe4b34711e22cecd5e
prerequisite-patch-id: 8e9c31987308350a2b33c98a4ba4b37ad73ecb2f
prerequisite-patch-id: 1834fbd8c3d1b15d27b510e5d94499e398d9defe
prerequisite-patch-id: 25e638140a624a621f0f8426bc9a946444c7ea43
prerequisite-patch-id: f48f23e01bf419ec9bf5ccf6242a19888ba1f28e
prerequisite-patch-id: e8d743a5ebbd3b4ed2617776dd834ac3f76b827b
prerequisite-patch-id: 62c024a2a509d047647b754cf2f81b86ff307214
prerequisite-patch-id: 7ee5550b797e78b62ec4ece5df83e016407b6f34
prerequisite-patch-id: a7310a19fc454091826cc75608cf45bc39ae71d4
prerequisite-patch-id: f31bf8b9ccaab933b515e817245b5aefe094245c
prerequisite-patch-id: c8663b47f7b1e1e10a297772a4b55a225f464430
prerequisite-patch-id: 00fac16b52f60383db3140e2885f3f7f8d14dd1a
prerequisite-patch-id: 3b7a60047b922c48e93599f621cb738856f42354
prerequisite-patch-id: 275c030b963be05dd1041451f539a130ce614277
prerequisite-patch-id: 93963424b0871e64276af0e0b2199b52e29b4603
prerequisite-patch-id: 8383188b1c01ed6280629faaa29c37d699ade241
prerequisite-patch-id: 5f8126b912b924d63d4a1e0c5eb42d212eb0d369
prerequisite-patch-id: 491d9a199421cf0f8d38570db6bc4df7c736cb2d
prerequisite-patch-id: 4d314f2c4eeb96b939e2c9649571a7390e251a62
prerequisite-patch-id: d4d51285d742835ff8ccd8261a6936751500b44c
prerequisite-patch-id: 6eb47ba29ee03454e06b3797d35a6b63ffb823a2
prerequisite-patch-id: de3a07c83c39b04d39dfe389a65a1f155b0fbcfb
prerequisite-patch-id: 5a6fcf9a86ae03755f5f44ccaebf6a4bc3c8d2c1
prerequisite-patch-id: 27612c371fe98695e1e32f9bcf86ea8cb754f9a9
prerequisite-patch-id: 09ac53ee54d84504f03192b82afc39d00f38f155
prerequisite-patch-id: edb9780c7c5956a888753dec1d7f094d4372e353
prerequisite-patch-id: ced618514187390b766e16a8e75817c368e1a85c
prerequisite-patch-id: 8e892ca11a1d4f68a1a5c08f2eb3e1a77b174c35
prerequisite-patch-id: e5e83a2594d05e315dcd32407ca8850677bc36ba
prerequisite-patch-id: f81ab4ac633e90d3249934f05b438f717276530d
prerequisite-patch-id: f7f367f481c48626e6ec91a2ec3b8bcb59a9c6ff
prerequisite-patch-id: 60b4334dc51df20fb25514f9176a99a50afa8c0b
prerequisite-patch-id: 1d77d167857cf6bac45d46de1823ec4827c1f0ac
prerequisite-patch-id: 98f4f48ebd817a40956028ebdded3f78a32af9e3
prerequisite-patch-id: 5c9589736b39cece609a7d9d3a7bdb4007f52b25
prerequisite-patch-id: c5d4f3c7f72e4a98d6ea344dd11d26bd2f0f175e
prerequisite-patch-id: 1087617a365f14e0cc1c23cde6898747f2aa1240
prerequisite-patch-id: 17508a53276fecb279bf37b5e19d387f6d50a3eb
prerequisite-patch-id: fccefa3582a6b642ed18442a88b07d5776c7241a
prerequisite-patch-id: 0c1f06337f2882c9ada7b73aafa0692b49b6d995
prerequisite-patch-id: 6a386cec2daf32bbf70d681235df761062169104
prerequisite-patch-id: f10918f72109a8cabf23487df5028bdfde422be4
prerequisite-patch-id: fbb6e6590a659ccb384474d13c2e3c6c08c76491
prerequisite-patch-id: 590f707d00a95244700f7fc5e7b66890a41a3423
prerequisite-patch-id: 2b6c9087f0d989207c64103e7b9c2df3c4f39562
prerequisite-patch-id: 4ec322fbc1719c98d96e4e7c8910725122d47499
prerequisite-patch-id: eb95a1655986b1cdb30664629f639918f5ad9512
prerequisite-patch-id: e52a6bf5e6b516ead00a2850eb34731541fcc4cc
prerequisite-patch-id: 8aedeb269b0c1eec7725dcd841bfd427e9d07e99
prerequisite-patch-id: f676877df36a65e2e7269f7301877e187af5aa7e
prerequisite-patch-id: d7d5e8ee8e03eaa781c688d5932219d58a070a1a
prerequisite-patch-id: 65b28d125c0ae9c0d0693448356826b404521895
prerequisite-patch-id: 8b9d23bc635cc8fbc99047b62864cafe18a2e494
prerequisite-patch-id: 9dc9c97dae95be977c7c407aacf1ce1561d09e66
prerequisite-patch-id: c00e3cbd92745c9982280a53aba16ea40e9cef50
prerequisite-patch-id: 437e66abe934f93faa9b9ad2a56f18fc7b9af1c2
prerequisite-patch-id: 43075ba597d985501fb8676b0039b45e1d9a61fe
prerequisite-patch-id: ffe6da845024225f350477ec59052c1041d35204
prerequisite-patch-id: acc80ecd78185983257604298c08999b1b9d7b57
prerequisite-patch-id: c3de970279ee39063e0f9e8d701a50ba87c208ad
prerequisite-patch-id: 4505d35e2a7b043e335934538ad0fafc65c4178c
prerequisite-patch-id: 11006cbc765f1e720886e2caa06653df46337528
prerequisite-patch-id: 85692653d4642a24472c600fc703e483a690ca2f
prerequisite-patch-id: dff004f57e62778f4196bb814cb4aaaa15dc11ed
prerequisite-patch-id: 537526e1eb1e47394d26a8f2b1c28d6248dfa21b
prerequisite-patch-id: 627f66f354ecfd18065935fbdd7e5182b1f4403d
prerequisite-patch-id: 5ae3225245299a11008b52cfb8b1c263ca1e03d4
prerequisite-patch-id: c8e6b68b582670f42c24bcda47db1008bc5da302
prerequisite-patch-id: ab450bb867bb2aa36e7e833e1bb8b9bcafcbdbfc
prerequisite-patch-id: 12bde8aabb1a2ef6ee450e88ba818dab294712dc
prerequisite-patch-id: 87362adfe2330de63b6f8c9779f3cbb168386984
prerequisite-patch-id: d17beb92c978647a7f33b098f968e2d4d3b9c95b
prerequisite-patch-id: 765d36343c6a0b3a4c2d3474bfa59517e922605d
prerequisite-patch-id: 9767e540e54e8037ac18d3e18a534945483fdc28
prerequisite-patch-id: 9c38c9a28c4480633f3949838a6bd4aa6da675e2
prerequisite-patch-id: b3ed82b718d973e3dd8c773bc091126d0879501f
prerequisite-patch-id: d74cd6b0b762c11a006dc6e297ae9e795e3dcaac
prerequisite-patch-id: c27179e3ccad05f8b9bd1bb04b6e21cbaeeb5565
prerequisite-patch-id: 0a4f04877ff1c871ee3c952e955ea2ee3332d852
prerequisite-patch-id: f91d0b351d81c53a96a962a582a4317e8cef197d
prerequisite-patch-id: 4e0cfd993618c373c28d05cbf017a8f151b462e4
prerequisite-patch-id: b21eae323f750a6da0f0280b32ab008d6cdac8d3
prerequisite-patch-id: a37a7345a5e612b90808c1bb6d1e40619d275c10
prerequisite-patch-id: 6de3c7c60708cb1cbe920a1454611654ce123ada
prerequisite-patch-id: c512806115b7f9cbfb0d2f56a8b800e335938ac2
prerequisite-patch-id: 7b487267c90505201fb76ef383a08627ff00ddf8
prerequisite-patch-id: 1e367b7549d3f46c4897c5b2a67c656603ead4d0
prerequisite-patch-id: df2df0c8823821c021687c0fa446afb3505488bd
prerequisite-patch-id: 1d62cf8fbc532fa8f66e5daa4503938223425373
prerequisite-patch-id: 1de5591ff621442115e016b4f5652bdaa769217b
prerequisite-patch-id: d130a7fae1c9ce63d6ab0bb303b0b7133db18936
prerequisite-patch-id: 530dcba3b00385ea30c910c04b6ef703fb158eda
prerequisite-patch-id: a43891d70dbcd560e499b8c797e770f4436b033b
prerequisite-patch-id: 75b257449c2c40f84e3cc547dca7ca639e7ca5c3
prerequisite-patch-id: 527c8239cc4c01db791bda165fb2d799e592df85
prerequisite-patch-id: c7e8537499309b5dad35306e0c3c3b651bb570f2
prerequisite-patch-id: edf7b78a97beb764384c08b875037185de84ef31
prerequisite-patch-id: fc6c948e1b578674b0a87def13867b4b5c77e444
prerequisite-patch-id: b097da3ea337d84199fca78d4c251ad22c615df8
prerequisite-patch-id: a35ff15159bcc6e62eaac06bb1b139cbb98134c4
prerequisite-patch-id: ddfda26193a18b5dcf4f67a619c924dc57c7b051
prerequisite-patch-id: def6e4eec2df34959c85c228e21a4a33e023eff7
prerequisite-patch-id: af835aea53b265c882a19d929987b99c88f1ad6f
prerequisite-patch-id: cde95ec661995acfb3d3e0657be845c0327656d7
prerequisite-patch-id: 8e56e7b53288fdbc48ee7858f4605ea742f67459
prerequisite-patch-id: 42221fabbbff6cbf9c3339b2af1c6090466ae265
prerequisite-patch-id: 4a741cad77860b12a55d52d90910a3fd69d79343
prerequisite-patch-id: a108a4c37b5fc04c9344f8ed26b0f3396ea5fb12
prerequisite-patch-id: 18ad1e48784315bbd8381e669088bb45ca8b87cd
prerequisite-patch-id: c408cb8778017fc6a8907d5e0c9a43b3005d208a
prerequisite-patch-id: 0af05187400bd403b56af1409cefeed925db9abc
prerequisite-patch-id: 6f1950eaaac4aa76804d58c301c17c5ce4ee7b9d
prerequisite-patch-id: 60c10fb937d4223b53f644c03dcc3e3a234ca23d
prerequisite-patch-id: e1522526092bd2d55e891036de6d2383c80017c3
prerequisite-patch-id: 7117c8ebf9162bebc7f69d1722ac9cf45b064de6
prerequisite-patch-id: c1e12caf8dd03aca4e15e4ae8e68b5e9b74068f1
prerequisite-patch-id: 34edf9a0897e670353fa65a0f780717f2e15ae4a
prerequisite-patch-id: 9ce9eb815e6895afe71383b2c237ac6580df54d5
prerequisite-patch-id: 8f3717b7f1fccd68f6e9453b360f65110201da76
prerequisite-patch-id: 047eef032d2788a3f5d84f61c47f075814cf4bb2
prerequisite-patch-id: 9a6f49100f01f46429f22cdf4ca5077d52f9070d
prerequisite-patch-id: e4469c421660138e1cf5fb35e317dc32df052989
prerequisite-patch-id: 2e29625054deb7a7438023defaf11d2f4e098aae
prerequisite-patch-id: 6ba1badb00f643cd5951b035a2d5e760458c679c
prerequisite-patch-id: 076cf368430159fe6cd4f53b4e3ce0489dd06fe6
prerequisite-patch-id: 06d970831a4db0f79612ee96aa6263de5dc98330
prerequisite-patch-id: 75ce6b888c71eb62c3da5bed2dd341488157f72a
prerequisite-patch-id: 228c5b43b313987a8c2dd0ee4722f86d98f76374
prerequisite-patch-id: 7929484ff3a1ee0e0491263349d20d818708e9a0
prerequisite-patch-id: 2d862b23a6e68f9fb94bbf542e65d0d5c71fa534
prerequisite-patch-id: c9c1a99ae045f48217415e044deae2ee7de57501
prerequisite-patch-id: aa7a47165b1da0e2b1ab11177d39bd566d543a8e
prerequisite-patch-id: d9d93f64517ceb2cf30154d643482e0993f644a0
prerequisite-patch-id: f9b659c530fb4d3f973c59974973fbc1162d5a28
prerequisite-patch-id: 5af49c3e2265fb9585601d732b8c58a9250ce8cc
prerequisite-patch-id: 400bde9614ba6be0e0b3aaab889186c0301b2045
prerequisite-patch-id: b2fa58fb887e27b42152f95670cc102207bf335a
prerequisite-patch-id: 4f88a0ab3313b6eb4afb2869efef801b7f5593e5
prerequisite-patch-id: 92f7174c7f3ec41dd3946df7883cbe9e54840862
prerequisite-patch-id: a46ae143bc91c70a9b01f9a0654c60ed4d23193b
prerequisite-patch-id: 49ee1c5f93feb8d159992fd74273a2581a9d6581
prerequisite-patch-id: 6cbf0e6f89c9c3a37b1c3ef5b66ea730c8254f60
prerequisite-patch-id: bffba21a4f6dd27711afd315f644bc0619fdffe9
prerequisite-patch-id: 374ed3f0f5f8b242c70c6021eb0ea1f11d0a4a57
prerequisite-patch-id: 1d3314c3d3f7f86af2d72b03333a99d616b73dc2
prerequisite-patch-id: 6923978b29e1b28893575d3c9ee1ec9ff5470b76
prerequisite-patch-id: ec96c839282c3d9958a2cf04e87f1fd24d7b0ee9
prerequisite-patch-id: 5a6dbb11c343036484496871244fd921f6aa0b30
prerequisite-patch-id: 7500b078a47ffeb6a20ca646ef0ed0105f82e8dc
prerequisite-patch-id: ef351d2dd220ce9e9e5afe1b29cf5e7c4b1763e7
prerequisite-patch-id: 92a86de910f338354f75a6977c2dcfc94af28089
prerequisite-patch-id: e56795a605d978b9d83b356b95ee2c5dcea05fb4
prerequisite-patch-id: 693324c42f9d826232802636b97df5f111cc3b3d
prerequisite-patch-id: a74c5443542413ca68201ef4d3df00769392d770
prerequisite-patch-id: a15372b4a9b7986ac903e2295e0c130b542d815a
prerequisite-patch-id: d570ac2ccb0f7cb3b943b11c86ca94d77bf0da61
prerequisite-patch-id: 2db3ed44ded743a938c77f0fe77c3f78cb3012ec
prerequisite-patch-id: e0c235f2f27d3b201a577f6bd4244ddb0dbc5990
prerequisite-patch-id: bcdb01760870abb98c8feb82ac8ca7c67b36b564
prerequisite-patch-id: 34ba451b6c19a243fdeaa5fae5b6d47ff5d61390
prerequisite-patch-id: c5bda8861660e85c6ffc8459ffda6a38efb43359
prerequisite-patch-id: 309a49dc43525149ba0bbebe9370ee1666a9ed5b
prerequisite-patch-id: 2f4a1f056e04fac2796a2b4e20d0c4a92ea93cbf
prerequisite-patch-id: d33ca9bfb1c0f592ee9782a2592b44bb9382583e
prerequisite-patch-id: 333ceab5900b255f390f264e6c51ec28a735a187
prerequisite-patch-id: 38423df5689dfe7b62d5e34a742621eccbbd0335
prerequisite-patch-id: c7ae0525dfd2487353eb1cae7017f7f357420943
prerequisite-patch-id: c3e0bccd6a0506cb68725ae044ec901b8aebf3fa
prerequisite-patch-id: 7444f8872c931d2c377997d27c181a0719f735a0
prerequisite-patch-id: 549f77f6638a920c1cd35166b3526122c8cba8b9
prerequisite-patch-id: c35e79f24145168de1a973eaf8962e434b4ce5c4
prerequisite-patch-id: 400516c1a47ca7e9bff2cb6dc1a8f81ee7f8037a
prerequisite-patch-id: 5de229e028bb73093011db44d4a4997f8d15db37
prerequisite-patch-id: c08f99bac466c998e18641de94f8692c1434cca6
prerequisite-patch-id: 928b670008da081b78f519eec36e107fbab89192
prerequisite-patch-id: 807b23211a696e9f032ae85b037aafeb08501768
prerequisite-patch-id: 1145e5762d000b371299b981054a7baabbbede6e
prerequisite-patch-id: c0b6b8d6d01513d624da4b77b01ee4a7af6b6e17
prerequisite-patch-id: 6df17c866b242df13f50eba6cd81f26d4dc0656c
prerequisite-patch-id: 7588d2a6490a46d188b33bbe4e46c62888a5ad83
prerequisite-patch-id: 85252984f56a31690f027b735594caf003738e27
prerequisite-patch-id: 86b571d585d2dd9f783220df2bb1baeab0c7dc2b
prerequisite-patch-id: 44f65619d39d4e5f1dd56a898ee6156238a6b3b7
prerequisite-patch-id: 412cfca3d3695325b90a70a56f998e26d34cf5bd
prerequisite-patch-id: 368f0039bdb590ec70f83327ed6c82028342367f
prerequisite-patch-id: 0af9e8e1b40955fb0f513f973db167ff469dd45f
prerequisite-patch-id: 9bcf4451468286d3a5ec840720faf7d8419bfa36
prerequisite-patch-id: 7efa594d789ee046821927c54dc6d343eea6e0df
prerequisite-patch-id: 18b30e65bc96e2b883d907de27e90085b6598a9c
prerequisite-patch-id: 4a385786daf401975572589c5bf1658250d2cec0
prerequisite-patch-id: da6fc6603fff915830dc0f4bf12e23ddf3e30a2c
prerequisite-patch-id: a4437fea6a49e9d16ed762e054663c97562eaff0
prerequisite-patch-id: b78c9dd83d128ec44a056fa5c3a322af3845516d
prerequisite-patch-id: 8180c2252365f17ef88f14ef7c8527ba1a7dad71
prerequisite-patch-id: 22ec81311eaf30f60153e6421176c1a4204bcd55
prerequisite-patch-id: 13919fe69398706e115c608ec65a9462194efcfc
prerequisite-patch-id: d4f5b2cb2148192e003572c7701d1fb50154ebac
prerequisite-patch-id: 8a31035e8d98ff76e253b3166c6cdbc95a71b7bf
prerequisite-patch-id: a7ee500b1448d9ed664bda3238cb6c7be74809d6
prerequisite-patch-id: 8a5e56a859d290d78fce90020b506c029e7ca94a
prerequisite-patch-id: 1035d67b6e0ec384c1149922f85a0f628d88ab82
prerequisite-patch-id: 618e07a584291401464ccc27433fbf9f3ee72e4d
prerequisite-patch-id: 0043f1813b14b40eddcddf50609dc358ae3d5233
prerequisite-patch-id: 429b6b82dd9603307f70760cf672696d38ffacc4
prerequisite-patch-id: 858d554398749c1e55289c388edd334d34713db7
prerequisite-patch-id: a020eadfd499eed4bf2b5c3fbd08464c9eee2f49
prerequisite-patch-id: a2dc7f7cc53bce86433a76e24c0fc2cd1827262b
prerequisite-patch-id: b2ef04dbf32ee443e7de584bce01e5ea4cae356e
prerequisite-patch-id: c5bdd07b10aa2e9980a9079b5ee274c888675b60
prerequisite-patch-id: 93156387a8f21246816fefcf91617c7d629ffd95
prerequisite-patch-id: 6e7085ce1a290d6d5b6ee52e1c17d3a515329723
prerequisite-patch-id: 2efe2140d1deb9407be3f106b813be991128af55
prerequisite-patch-id: 5e829feabeadb4053e8a86874f9ebcdff5355cdc
prerequisite-patch-id: 5986be671b83002ba2d5277ecb0ad5a139dd7531
prerequisite-patch-id: 0b3ffd4b4baa8656a682657ec2cf18b492e4bc7a
prerequisite-patch-id: b6888dd525179c162d23951e6f818920f5e6d187
prerequisite-patch-id: e2ad870c05a351e54c2c9079488ca4835d6d1898
prerequisite-patch-id: 505c8df137cb653dcc7ca388452ebae09de5c860
prerequisite-patch-id: d79a188484b75e6f2fea742ae93ca920f661b9c9
prerequisite-patch-id: bbe31633d82a4f3f36584e63fcade8c0ca717b03
prerequisite-patch-id: 2aac6523b6ae3dfe5db5a1fdcbcf8f63a76dabed
prerequisite-patch-id: 875d59dfee55d2e952c2a6f23262ddf65222d397
prerequisite-patch-id: 488f894474348a15106645064cf8c07c2e35c45c
prerequisite-patch-id: 9b010c454261d9117d1a81432bff1d1b41426b58
prerequisite-patch-id: a6732b7f9a75c169f3d8a796e9daed80ac27fd72
prerequisite-patch-id: a2dd5c8b434086d33d9b501617487039aafb4821
prerequisite-patch-id: 6d176947fabd572785e7f007d5e225e5661bb3c8
prerequisite-patch-id: da893d22d793de959a5e91b9b3ffa04594dd700e
prerequisite-patch-id: 14140390bab38ef5986cb4efa4c28d6cecd63779
prerequisite-patch-id: 0f6f951aa78b3a6db5b136957ba5b43eb856320d
prerequisite-patch-id: 2928fb144f3307bb19c7869468c76290f5af6b29
prerequisite-patch-id: 9148db85ecc7717e02b8a52113e14a896b8f63f2
prerequisite-patch-id: 4074adfe254667eec8d18deb2588c0663a2399aa
prerequisite-patch-id: 7ec77170a638b38fce4af31b1cfead66cbe3664d
prerequisite-patch-id: 0c882585207f46754afd634c2251b02db3ac20ae
prerequisite-patch-id: dd16c7e8845f003d2474800c9fa7d221e29f7ad1
prerequisite-patch-id: 7984faf89bb5f97d878e6d5ed460d94a3ac51c14
prerequisite-patch-id: 60230e11c1a1fa4443d587b0ab10a55731c68c18
prerequisite-patch-id: 46f37e73fa058d30e50ec0ed47b0ea297ec05764
prerequisite-patch-id: 7e9768183c09db5b8b203436f601bb69e912bcec
prerequisite-patch-id: 6360d80448338368fbc0b58f761dc8c78df4d3fa
prerequisite-patch-id: 9bbbaef2ce2f87550061d2d8f04ff4b5ea00ec4a
prerequisite-patch-id: 329f485f5ff0430837311e095410bb8fa870de62
prerequisite-patch-id: ccff0695d90cdb4622eb7ef66eda3a43b73b832a
prerequisite-patch-id: a461062f2e40b10869ddc08e0c90dd66c6f106a7
prerequisite-patch-id: a87cbbee68c3485db55c5a66f2b8778dd7a0d01a
prerequisite-patch-id: 0c4fbcc1529331c0f3348d326d93bd41f4797e2d
prerequisite-patch-id: e748d0509462d2ea36d5741281f3374cbbf0c741
prerequisite-patch-id: a501235be2676f6e9f507c3f6fdd6bb0fb5d1edf
prerequisite-patch-id: fef79536b32301d90f608926391a36ba8afa83e4
prerequisite-patch-id: 62f3d690cf2846340c4653532038001e980bfdcd
prerequisite-patch-id: 93dc214757b4ad47545918eb2302956ebcd73aa9
prerequisite-patch-id: 165b0bc89027d235969c7eb8847691f727b56927
prerequisite-patch-id: 626d534cd5517cd439c5c3f36fe03f7f9f583a50
prerequisite-patch-id: 339d144044ce3ce7233e96ca92505fa65fa97224
prerequisite-patch-id: b8c6b223f730b8aed7c11af0c85e984f4db2e33b
prerequisite-patch-id: 972324b2bcda1cb4b01363b6dfb1d4bbb89df168
prerequisite-patch-id: 51865557a9dde529e5aa4815956f2ef9aa27fd7f
prerequisite-patch-id: 9dae2d934ddb59769ae03034ccf5abde92df0d9a
prerequisite-patch-id: 85678a4b69850b141148f00dc8040e290a2dee7f
prerequisite-patch-id: d564f79df2499c292de7f5736d7e77e3a9401b56
prerequisite-patch-id: 5160e4562afafcaa1fb10d582a0854e1a1fab7ba
prerequisite-patch-id: c620695390b473f45ed07d96a5ea816ce7fdfcc0
prerequisite-patch-id: 35585ec45c4d64899ba0d96ef64ae46216926778
prerequisite-patch-id: f30209c992885c26a819d7c1bbd036746638ac6e
prerequisite-patch-id: 612372d47e35858de2c4e561f35e3121181f52a7
prerequisite-patch-id: 9a356031818e4bc5cb914f8016cedee9400f21ce
prerequisite-patch-id: b2afdec6fdee26060056fb1382e39aeb37d36f14
prerequisite-patch-id: 49330a66963bc395189e3efa6cc0ef6e4f34571e
prerequisite-patch-id: 6eac55dee6ba2306c213445dccd6779093e7669d
prerequisite-patch-id: de854da780d1b12e0d62eac6b9d06ea5a5ef5f08
prerequisite-patch-id: 401d33468991dc21665dbb661e89eea391e92c97
prerequisite-patch-id: ad60e912f5c2069bac5490ec36533d0d8088b804
prerequisite-patch-id: 25dccde1cf8b7a32848e72a45ee450a99eed4505
prerequisite-patch-id: bc4a320629bc64ecf407a1661489b75b301ecc9b
prerequisite-patch-id: a8b8d6d02d4a65258b4532b9ec0b882d2613316f
prerequisite-patch-id: a98f41150b2f2fcef49e79e64f60e9a9b551e752
prerequisite-patch-id: 4c747d0af79fa2dab0fee5eea9f3858516aac729
prerequisite-patch-id: 4306234ad2f453437c667de2a513f62da1e56eb4
prerequisite-patch-id: 42394932b10111bf3e77ca576382574524323643
prerequisite-patch-id: b98268b79b9c742cd0c1bf204d1b6e2b03f742de
prerequisite-patch-id: 681ba958aabc9462b8d4dae330ce60c3d37f2fcc
prerequisite-patch-id: c0488fb13ec861a2dc3098f3843717f006eda648
prerequisite-patch-id: c058c0bee054df1b8188b482b619bb8083d2d587
prerequisite-patch-id: 499522700e05d465131b719bad79618cc9786ef5
prerequisite-patch-id: ca90f6821722c40ce2c2cd3c648af9ad9bb770a6
prerequisite-patch-id: 866704dc960731fa851476f41a85eb79b25b909a
prerequisite-patch-id: 8a13c5787b4d933b46f4eaf9698ea1541bf178ac
prerequisite-patch-id: 70e2ebd3e2dcdb8b6a4b911f9d0d8b0de9420059
prerequisite-patch-id: 1a3c7e48b57d3c73b1a2b9a1d700d85b26e4585b
prerequisite-patch-id: 6ba4c2a534e80be38b33d0e83b3efa21715e2218
prerequisite-patch-id: 13f0b3d74c2118e3993e1047f01d4f2b5ec0cf88
prerequisite-patch-id: a8e0cfbe47e2f1ef7025153c2028585c1e4da16a
prerequisite-patch-id: 199bae83b617353d19f7d0ff485fda51b815a103
prerequisite-patch-id: 358ff35b1d38f501e2d2ead58a209b2ac64082fd
prerequisite-patch-id: dec1644ebcc96e0b53fa715f5022300013299e6a
prerequisite-patch-id: f279dcccf6d4460ef280d77f345bd84b6cc6985c
prerequisite-patch-id: 1a8edc1adb70b6dd67b13314051fb0d63e376267
prerequisite-patch-id: 50bc150f76847e8d85ea101a834d8b8fdc39258e
prerequisite-patch-id: 5d393def38223c1bc375a90700f381af349c2303
prerequisite-patch-id: 76e98e2aa099fc72d2855555294ded27d425d364
prerequisite-patch-id: df0599410a9186c504a84d7329f79affefc6f0b0
prerequisite-patch-id: 0eff0990f5f68e3771eeb56efb335c009c0165a3
prerequisite-patch-id: 7b57b2306d0124f029dabc93cab7c3d24a416d6c
prerequisite-patch-id: 5cd0e9ddb16f3d58f9b5c93d07314d6d32da1791
prerequisite-patch-id: 3f26ba38963eaecf987d67b55d6573fb84c48327
prerequisite-patch-id: abfbf78ff998e2be11310a38c20b1c90104f6455
prerequisite-patch-id: 23ecf8a700ce19c68cfcd22ff9c16907dd5227c1
prerequisite-patch-id: 55661e8243b70e546fafbea5f4800084f3edc0cf
prerequisite-patch-id: 8ef6f066962866f9c81a6c97518fb1290d35d0b3
prerequisite-patch-id: 6053dabfb50ca1fe3208218f6f5c7e6a0b2537ae
prerequisite-patch-id: 5d359457747a0bdee86319b48e8ee1250da7a88a
prerequisite-patch-id: eae75f48c65d53ec7d28050a3be31e3e92e343f1
prerequisite-patch-id: 85816a7929682cb5d48cc9002a5baaa5c84d27cf
prerequisite-patch-id: f9575986a4865571c250f08d7a38fb8fe58fba5f
prerequisite-patch-id: af2bed1960f8a56877305eca4586f40df1cfd238
prerequisite-patch-id: 93fdb46358a0f0add5e6d49c4e28f654b4b728fd
prerequisite-patch-id: 4fbccd8b3f26e3a2f2382b0f669fb9d70b306363
prerequisite-patch-id: 3e6e0d27333489cf3fa8be839eb877d40f54e5bd
prerequisite-patch-id: 21b9ea4906690e24cf385b26037c48a19a70ec82
prerequisite-patch-id: 24e463fb482d49e2fdbb4b6e06f7a8dc5cab6e2c
prerequisite-patch-id: 987a81d6bf0be104eb896e8798cd5d4518e09cde
prerequisite-patch-id: 42ee07d35f532e172a464c2b371dec76d7ac18f1
prerequisite-patch-id: db5c8f70e8bb8bb8898725e81dfe562eead72669
prerequisite-patch-id: a7d251e16a25ce5a311b94a98ee99dc3c727aef8
prerequisite-patch-id: f63819c44eeecff41df2317f69ff70af00ecd473
prerequisite-patch-id: d15a02936c7ef33668fe94856ba79fa6434ef213
prerequisite-patch-id: e90452f2e5682c5c89fb73e908a5ac1cabb41f6c
prerequisite-patch-id: ca70aa986f93fa29f5fc3246c932f62ad376acec
prerequisite-patch-id: 5ec2d55579cd214c9e7021b65097face533411ff
prerequisite-patch-id: cdf6438245403b5065740ab50c18a95ebc360365
prerequisite-patch-id: 2004b72ab505dbbd922b4e53c794e0d8d9f93aa0
prerequisite-patch-id: 51e5e19c8dbbee63a0d71d29c83505e1f0f6a97c
prerequisite-patch-id: 6d07632f8a4ee4655079b1f8b66578398b696aca
prerequisite-patch-id: f9293483623894a98d2b13b939b3f69f3a33e977
prerequisite-patch-id: 21ede798a4a77161f1a69cd6b05588f5216d346c
prerequisite-patch-id: 8222aa2835963e5cdf101b33191234ff2e868cbf
prerequisite-patch-id: a0bebba78b255674c5a5611979ff4f21599d34fd
prerequisite-patch-id: 070aec9e88de0636b6ef2125674735ac48a2f47f
prerequisite-patch-id: 7cbd6bd71adc6e759a34c47d8ca8d4fc09048cf1
prerequisite-patch-id: 305df94dda94eceb83102e7a409ec7752cfd393a
prerequisite-patch-id: 8c97e787da246b3b65a8f486d6c82091dab070b0
prerequisite-patch-id: de12def77c82192f01ab2c88546e86f45c453907
prerequisite-patch-id: ba6e17d855a5a938ac95c906185953d0983ff9b8
prerequisite-patch-id: 84bdfe29dcab3906764d92f523577a8b4da64961
prerequisite-patch-id: 4ea03c23f2b799d84e4c83327c919af9822b1782
prerequisite-patch-id: 754494486a2da59bfb00333813c342ff4d09cddb
prerequisite-patch-id: 321fc06db8d00ad027b395298b7ced1779f8eec3
prerequisite-patch-id: c152e6e37ef1991c7e2b288083faa18258bb3eb4
prerequisite-patch-id: 34d98cf7984c9aff1e559888e4d2aa65f1e64ffd
prerequisite-patch-id: 711c1f748b2fede755b4ca52924576f2383f3d45
prerequisite-patch-id: e96b58e3ae91ae2d40ed2c012c2953854f87de8e
prerequisite-patch-id: d8ad55e941ab80ea700503a12f965bb8ee65ff3f
prerequisite-patch-id: 3dfb547d0ac9e780852b718a92fe230a32a47e17
prerequisite-patch-id: 00f1e404df51e5a1be67221e0110e96f4992b90a
prerequisite-patch-id: 6f10cb235201be23eb7975b7ab03e290d2fa54bf
prerequisite-patch-id: 77645aefe0add7a11a264f057d3bf46b4e4831e7
prerequisite-patch-id: 5b06012e5275a87688751fcb5c6c97009bfa29e0
prerequisite-patch-id: 2079f71a0f778d44e9119721e0deea2d7c8f5f57
prerequisite-patch-id: f9f697edca9d64299cf17fab03adb074474b045f
prerequisite-patch-id: 20529e3c291e49001efee325f4cadb5188ec2549
prerequisite-patch-id: 39958695bd1539a1a4e06fee3cfecc52e928b77d
prerequisite-patch-id: 24d2af320f960eda46d4bbecc7aa076f4e1adf0a
prerequisite-patch-id: e2a10e642ada1c498f63361c7f1571ca87d0a285
prerequisite-patch-id: 8815ba8991b3451d706c394dc743fb02b98c9330
prerequisite-patch-id: 5b288c0948131efa210ab315561e07fd209a18e8
prerequisite-patch-id: 3be6766a2e0b79b1b04932ef5feea1b3a15f7dd7
prerequisite-patch-id: c8002ec5142442d1f48b720bbd40c7a26955348e
prerequisite-patch-id: 87d6a56a4ac633e97739d9046cf1a16f8959be0d
prerequisite-patch-id: f67adab1526468baced8d0c0a0503353ca9221f2
prerequisite-patch-id: 074e08c86bb80893e06c8ca9937bcc77b2a4edd7
prerequisite-patch-id: 27cce515b3d49974d905c0ad32553f33be34024b
prerequisite-patch-id: 37b2b198f27f7630c5b8a739b3b32e5fae8c60dd
prerequisite-patch-id: d2ac0decaa25d80c394e639f25216f72af60fe86
prerequisite-patch-id: 17c809a3e6dde669264837305a10e4b9651053b7
prerequisite-patch-id: 476813dd040113d50901c5b390f447276bb37246
prerequisite-patch-id: bef610767a408c99339fbb3fc3feac670613e7ef
prerequisite-patch-id: ad10dfe64c9aedc9c68cba2c66101cd78d2d7345
prerequisite-patch-id: 34d491f1b57b9c968c3c1b284a2dd3aca127b40a
prerequisite-patch-id: f455d2c7cc63a0b1914ebbc49427823b1a8939f8
prerequisite-patch-id: f1382eaeac9d54b167e50b355b13976790d1b46a
prerequisite-patch-id: 94c2e540d2ddd2fab4d37d478147ea879bab3a6e
prerequisite-patch-id: da0796718eced160488818f3a762457b880e318f
prerequisite-patch-id: 54a11c0a7985d60e0fad9d9be43915876f5045d5
prerequisite-patch-id: 9862afd2652ff0a352735de5d8ab7e6b7515e3da
prerequisite-patch-id: 8414725eb659d85abfc1519a333158f5d54259c0
prerequisite-patch-id: ed7c7fca93df611d026facbc2a6270c26d3ff149
prerequisite-patch-id: d3baa5e23e227ccb63b64b1b7a54c7205b52d23b
prerequisite-patch-id: 2e3d5531994c056ba1aa67349614792dad4d43de
prerequisite-patch-id: 4b5c0c715f8fa08978732937b98ca7198358aff4
prerequisite-patch-id: 4bffd8067d142c5c078f173d35039c070b3f61d2
prerequisite-patch-id: f5dd22731925bcf50cddee7e44d28549ba3cf39b
prerequisite-patch-id: 0d86228f47ae06d2ececc4bccee3e16e99b37b94
prerequisite-patch-id: ff50225d1a68e4919bb030aff3da1b812f0806bc
prerequisite-patch-id: 4826192904d60f9855af66e6b7ea316b5512efe0
prerequisite-patch-id: 85bfbc7aaaf310889c697d48147d725102296887
prerequisite-patch-id: 28e90f74ba18091090c6bd93623ac743ccf5235c
prerequisite-patch-id: e2dfb5696f6cd84642a2f179ffc28e7accef63ea
prerequisite-patch-id: 41896cadc294266806676770fef440674b15f5cd
prerequisite-patch-id: af15f43dfb0f97cd85f6504707abc8429a91b6e2
prerequisite-patch-id: 51bce341c46ae498f92641877b8dc54805c422b2
prerequisite-patch-id: 4ba0805ff73e2e98f9359d880c13ac891f37447d
prerequisite-patch-id: fb0cf1ed1ec5a3708c86ae48558048ad415c9f53
prerequisite-patch-id: c7ffdcba0bdf872d8df5df81416b62985b69e4ff
prerequisite-patch-id: 5b7c12ad234fcf23c1628d4ad7bf76bb3ffd2179
prerequisite-patch-id: 6a6d4821b1cde1760b407ca62af8142aad52d28f
prerequisite-patch-id: bd1fffdbee066e5af85d3b78a7994bdf0a222efd
prerequisite-patch-id: fb9af8fb4ccaf9d4455467d82fd83978389a00ad
prerequisite-patch-id: 982112b0cf665cd1fa139488ade0806e9a1b182e
prerequisite-patch-id: 839f437b04bebbdfdb08b49015cd4163bb9d966f
prerequisite-patch-id: 9f8818f35eb2a781e6557a49cfd975e6b041350f
prerequisite-patch-id: 99270dbdc6692520dfb252b9364e8f3b9647a158
prerequisite-patch-id: 3e05b9fc7f6ff751000e94bab7daeca0b866c039
prerequisite-patch-id: c8dbd589ab434c59f38ab2f92fe2fc41e47f53d9
prerequisite-patch-id: 21b2d8bd74588502f4a9620b9659541d1c7c95e0
prerequisite-patch-id: e858d184ee9958f5d2a7dec8333a2d72f2814f10
prerequisite-patch-id: f628a03ca36c2fbdda0903fed8147c1a83cc86cc
prerequisite-patch-id: 75c22e5c1dcba578a5de17e2e5ba4bce323f6c01
prerequisite-patch-id: cbb344012dc035daa33979609e3df34803250eee
prerequisite-patch-id: 7c3b93be707964925debd91f6779b297e7c2f99e
prerequisite-patch-id: 7e9f05c8d48074ea3c5304a2dea403661615021c
prerequisite-patch-id: f4b1dfd8e7569c4134bf46e0ecc3ae7a0652e2b2
prerequisite-patch-id: 73f142c97f6b4b9d0003e942c70917ff13c310d5
prerequisite-patch-id: 9ba0816de41445f93349fac971d90d31bd1f59b9
prerequisite-patch-id: 79a5915b3a5af02236ca3e6e640de3def379032d
prerequisite-patch-id: 175312e726d322aba0d8f5cdbcb92ab361f37e56
prerequisite-patch-id: 39f9142e4b90005aef53ccecbaba6e34ef1d584e
prerequisite-patch-id: 772ac0ed16cb5dda656705ed51607ecb49bc7d56
prerequisite-patch-id: 6b0d782efb591c4306da7879a12d315d59de89fc
prerequisite-patch-id: b5e1372448e3f18ac9cffcf530db0c2402c10150
prerequisite-patch-id: fb9ef33a4efa2b1654bf0523bfdafc5619b5bb5f
prerequisite-patch-id: 57a6fabade4c0fc5f5b74b3de34dc70d167685bb
prerequisite-patch-id: 71c037a5fa1f28a322e87147028ca298e87ae084
prerequisite-patch-id: 5753bce761a9b4a121e6506d8844045e828e6cc1
prerequisite-patch-id: 2b6803994b60c9434b9beeeeefaed69594ba87b9
prerequisite-patch-id: 87b06ee4daab97934e599821c869d2f5538067e4
prerequisite-patch-id: 3c87e51e8340511dacdc9483ed9082f1b0707e4b
prerequisite-patch-id: 61edd4d1f8e04916ca20caa99695a4de66a99fb6
prerequisite-patch-id: 18689bce5b9f08777b3b601a5b90289704d32d9e
prerequisite-patch-id: 233706a6270d85e7376fed2b8174ddf7c14f4653
prerequisite-patch-id: 74b28048279b80c1c629ee6dac3899a01fd7951a
prerequisite-patch-id: 06bd288f79d9da2fc8db46e808fa9e6888895954
prerequisite-patch-id: e1a484ceb12ff153994989bdd9b2904b36585af4
prerequisite-patch-id: f94519cbe902f630a0713a9796ec0e1e9dfb67d7
prerequisite-patch-id: b6dd1cf260c6688b0d3b8093ef4a5a20337ed206
prerequisite-patch-id: c5c356bc1d45ffb4be14f45da84263f20a536a3b
prerequisite-patch-id: 52c37010b3510d5ea6d4994804b47aaf9a470c52
prerequisite-patch-id: 5c51de132f1eb32656a94d7979ac4071ac429615
prerequisite-patch-id: c30bee39d6fd2a6e490ee681c3b02bd37d66f7eb
prerequisite-patch-id: 3e083941d08646e5ad3b263d28857c95a2435d89
prerequisite-patch-id: d3267251377c1fffe17a665dc026763e47f03d8d
prerequisite-patch-id: 8e52f7900d87dc0938a098e4ea0d581c12563721
prerequisite-patch-id: 39b7443847ca143b520d24f049e5d68f314346ed
prerequisite-patch-id: 76e06d4b4876e1d30ddfd7c0f9358e39d987748e
prerequisite-patch-id: 7a778293825f8c5324979e04166a6ed5977cb93d
prerequisite-patch-id: d986b574ff8309e949507601cd8de5f3cadca625
prerequisite-patch-id: d26aea40faf3bf3245c5883941dce15f7d565e85
prerequisite-patch-id: a616ba13e0ae73bd6bd24eacfd1fc083a8dbe335
prerequisite-patch-id: ad42fe3c4a94181f990e8e826f52780289c29fb3
prerequisite-patch-id: 618b3255a3737f46b3ef457020a04a6466f8f6ed
prerequisite-patch-id: 47f7ecc46742f264e72ab44866cc91dd9d8bcc5d
prerequisite-patch-id: dea59cf4b90b21f6a4072deb43d876e18437725a
prerequisite-patch-id: 99de2255f913a74ef1458b99478ee7497bc788c1
prerequisite-patch-id: 04da7457d39cff2fcbcff1eaf777eeeefe4e6766
prerequisite-patch-id: cf77862520a00133770cd7d2af1aea7df4e0de32
prerequisite-patch-id: 557e3c3dd0adf443f9e45356d9711424c88c4268
prerequisite-patch-id: 48553f2c2c06b36ce574175ab10a9a64bc811bf8
prerequisite-patch-id: e8b6b9075cf5cfe5f06ac1a8f9a83fd50a2a8839
prerequisite-patch-id: e96cf2316ff66e2eb93fa852ee7307c89d1dc1e3
prerequisite-patch-id: 72455cf20abcc8307dbe1bf522817e33cc885fed
prerequisite-patch-id: be4dd7b83146e91bbb527b3627d360108d9dcd57
prerequisite-patch-id: fdb702d2d06f85277b43d40be12a28952e25ddf6
prerequisite-patch-id: fd03a946cf48c57a708b1424df80b3d048feaf3c
prerequisite-patch-id: 6da687e664a291ca6b4be6e84a115a2397147166
prerequisite-patch-id: dc1b6561527d3a20a59c0172ecef4b81e40f36a3
prerequisite-patch-id: 37b981a4f6425ef480677fb451edb3f0956e8e93
prerequisite-patch-id: a1fe51ccd3a61dc4c4cbaf2c0d0f9798c9d0f093
prerequisite-patch-id: 356918ee143769e3e0fed8c14f7c654085413049
prerequisite-patch-id: 05f7a89ab1865d2eb5c0e8e03e4560da36417383
prerequisite-patch-id: a5da60071cf66da92214303413ef1120b74fc3fe
prerequisite-patch-id: 35501897500c276051d7909d37ea578872f26fc4
prerequisite-patch-id: e1caa3db7fe57125709946a2c5e15d1985ed1c57
prerequisite-patch-id: fe6276a134137a05e00a13aa0e7029e5c75e7440
prerequisite-patch-id: adae7de2b8859faff1115affc19c89c1af99b5d9
prerequisite-patch-id: 5e891e65ff10c165cb9340abd972e6ea73d3c352
prerequisite-patch-id: b7379ca7ee502597e2c6bdf438bea607bb240e5f
prerequisite-patch-id: 4ea00f51c1eed8b208761fa9f02ac5c242d01615
prerequisite-patch-id: 5165ce0de4c9c5ba64bed8bcd696e8cb5fa091e3
prerequisite-patch-id: e8163eb169c36bef2c65f788b29f01bbc0ccb538
prerequisite-patch-id: 304bfe7ad4fe93cebe70077fa9495a1d91a11801
prerequisite-patch-id: aa86a3895949dc38f56aa206cfc430b475748719
prerequisite-patch-id: aa7471b70863a8d50f76cbe59a459e2b174b9bde
prerequisite-patch-id: 86c22e04dc3f7e13012f7df35062332662aabeb1
prerequisite-patch-id: 785b66a20e714c68c70b2bc5d04ffecd3f5e8886
prerequisite-patch-id: b77256cf5c175c281a46d0a476a4df7c640b82ca
prerequisite-patch-id: 13b47188de926cc6acf547d1e811cf24d753ef08
prerequisite-patch-id: 70b31c12fec31e7608ec69e81d0e69ae191eecd8
prerequisite-patch-id: 70e076fbc3d74787f486f6498a43aca06be10a5b
prerequisite-patch-id: 20cd3620f99e8c4f883b7edff4bfebabb449cea0
prerequisite-patch-id: cdea6cd214f376f123ca91075407d47713d502c0
prerequisite-patch-id: ce569f2d71f639ba0de805756b8c562211d02b65
prerequisite-patch-id: 2b9b54ebcf4937f90118efc142f0b34552cb47a8
prerequisite-patch-id: 6e6e2a8341e922efb72f04bab7498451600295f3
prerequisite-patch-id: 833653d35ba03741e6a0181d20941e9f91438ff2
prerequisite-patch-id: 86b33df9b7b7682c118623f5d2714560d9c90c6a
prerequisite-patch-id: 2659cfe2294725cc8038264888fd59a850e70451
prerequisite-patch-id: b8bc9d34cdaf2b215634944621e560acf7cd2f4b
prerequisite-patch-id: 390396f3d28938249168c0bcd140c1c7ebe70b72
prerequisite-patch-id: 13387919d55666c852d129d6fe3f766754c3bae5
prerequisite-patch-id: a8ec6d86976a9858d7614aa0c42de1e8420d02de
prerequisite-patch-id: aab718e5cc8e166f2b7314a20e4d36bb08d3a505
prerequisite-patch-id: 1ddf7fb4dec908557e2f21bbcadb3121d47cb217
prerequisite-patch-id: 7ddf30b5167554d95edb645ee02178a1ae4116a1
prerequisite-patch-id: 5b6b107835b937d683ff314cf259ee37ac3e36e6
prerequisite-patch-id: 3f5805b2cd187262c3c04d0a316a003a61258655
prerequisite-patch-id: 03dcee5b42778363e76d2cc41a5a9a38bef7e6ce
prerequisite-patch-id: b3ee83c6896ed5e3e282c17500d2eb7ad6b64520
prerequisite-patch-id: c99d5e206d7c832360fd5e5b87fb452155eee43b
prerequisite-patch-id: 34f61e845328b7f669759988d952a1eee2df51aa
prerequisite-patch-id: 91080c262771e2d108185ba18ee8c4ad62067284
prerequisite-patch-id: a0ecf2b16e4e2729e85bcec7b38140d6690cdf4f
prerequisite-patch-id: 367a74e761b36c68545db41051e1e7831b1cfb18
prerequisite-patch-id: dd337779d72bd16340d6addb49f472f816ab0095
prerequisite-patch-id: 9827cb023f9277d52951fb89bf018d400455dfd7
prerequisite-patch-id: 03dfbd11d7665cde9c7f2ab55abe67d81bca00eb
prerequisite-patch-id: df5a4e0d677d46ee7a1f7c24ae0982b6a1dc7479
prerequisite-patch-id: d15f4dcaa1987a15ed9258eb29158e6a0f7d9855
prerequisite-patch-id: 241693bae217277ac554f2b851148f7926e4bde1
prerequisite-patch-id: f0bc9475d823550293a3f584afa92311a89ad98c
prerequisite-patch-id: 66ff40cda0f89a40c96a175dbe67b689b3b1a71a
prerequisite-patch-id: 317e057100f87d2316a0aa3ce99cc6b350d80c6b
prerequisite-patch-id: f9b78dd6ab093b3f5a42c08e3fd9f56e7e528728
prerequisite-patch-id: 567ba7652a596a920f4a937f1f5d7ee1aa4ed1e2
prerequisite-patch-id: a201274a6da594704c8b81be59fecbffc8dd790a
prerequisite-patch-id: 4984f13823f650b882a8fe2090b35ae85f588c20
prerequisite-patch-id: b9c75740a0188023fa5dfc92c260a60c569e8657
prerequisite-patch-id: 154244d82da1fca8a0012754586caf7a0c092dd7
prerequisite-patch-id: 9dae3cdfa70c0c10878aa2e1c28f1ba91eebfd51
prerequisite-patch-id: eb024cd782ccd76621b01c34812a286e21e7a115
prerequisite-patch-id: bca76c66877397d37863deabcaf98b059598633f
prerequisite-patch-id: 5bf9273bfc9508e68d66897d563684fa4c6bad9f
prerequisite-patch-id: eb82b7b4e053120dcf3fff03ebdb1214cca74e49
prerequisite-patch-id: f177924f7f23ea5a1344eb3e226b44abdbc8c14a
prerequisite-patch-id: c43c09ce65506dc4bab623b664092e81104a9cd7
prerequisite-patch-id: 883dea7b551d89e8dc7db58640e1a3387e399016
prerequisite-patch-id: bfcd654a7cc748c88aa4a543443c4b4255243441
prerequisite-patch-id: d08b4aee4a93d895c1f29db891d188317aa91961
prerequisite-patch-id: 2b01abf1fe764e0d6e4339e12661cfaeab36ebf7
prerequisite-patch-id: e01e69f7ef45318e9f1d63070320e6b5e85573f8
prerequisite-patch-id: 25f2535c6f58906e0211ab955845cf48b334e8da
prerequisite-patch-id: eba80518b3dca2d413cc0ec2bbc1ddd9b46cfdc9
prerequisite-patch-id: 5035aac0ebf5c1fcaec6df33da0e20edc95bc444
prerequisite-patch-id: 997f560404fce7f803c172531ebc0c923b5e2579
prerequisite-patch-id: 191441171d74b7c9558b7334e333f930093b40f4
prerequisite-patch-id: 97e1471a5b0fc62aeb184c74162793d835491add
prerequisite-patch-id: d6d8ed7348201ea34b2c647fab4b326b9af5fda1
prerequisite-patch-id: b42053820a16fc74aba30ce9921d3eb52f4ceb73
prerequisite-patch-id: 6b17447fb6b672971eb222074cc15fda1155dd86
prerequisite-patch-id: 6b4c3ac3559f850e075439979652907ae943b55f
prerequisite-patch-id: 4458a79c110e7bee5b1f7298bad93642dbe72aa6
prerequisite-patch-id: 064b174022a2c8f6242f6192d2ac5f6fdd4df8c2
prerequisite-patch-id: 3a9104f1a21df09be05a5222899dce37b5218387
prerequisite-patch-id: 574999da72aaf9085b4703aa794e659ce211d636
prerequisite-patch-id: 34e4ea35867494e135a4aa580639017e2a7f045a
prerequisite-patch-id: 16d22dd9b047548a1d2e8703ea582b87e0c83b4a
prerequisite-patch-id: e1aaa369a3b85afffdff4a6044ed224a52e7718f
prerequisite-patch-id: 84c9f8dcd846ff428520a3cd8b9ab66ade7ac61c
prerequisite-patch-id: bc676a8096e2084edd8126ea122240d4b90ba1cd
prerequisite-patch-id: 47c84dad21785279016d368fa956f0339c55d0e5
prerequisite-patch-id: 6baef07172daf21e71a9ef922dc4ec927e314653
prerequisite-patch-id: e80af628a2e0b5f2eeb3cb1b5e7133d08bdd2c4e
prerequisite-patch-id: 46762696303ea82a5ebe807424b5125bf73a7ecc
prerequisite-patch-id: dc71232937d02f087dc8519b2751176acdda5237
prerequisite-patch-id: 04ddb7f204509ad595532a047ee7c3f83800c023
prerequisite-patch-id: 98a92f617d87632e4d35494c1126478b84976697
prerequisite-patch-id: 0b02fe49ac0c21115cd60c9017ea570c9ff854c2
prerequisite-patch-id: 63866577bf85f1c6c9b90d7cce0acfac67ec9c54
prerequisite-patch-id: 7aa4a1f6d6fac1e86d92e4d14af78af74749f0da
prerequisite-patch-id: 5bc689ef6ebac4a5de3f7a920ad27441235380dc
prerequisite-patch-id: b205e3380065bd3c7a382346a0ff2cbd8e62c47e
prerequisite-patch-id: f9700f8366abf0ab33d3c9c538ada8f9beb3e84f
prerequisite-patch-id: 64d208adff37c19610f9c0aaf086bbeb5c04384e
prerequisite-patch-id: e0eee926d8e56c8c1f7111446287d4aad03e9e49
prerequisite-patch-id: b4c8f1840a7a76867c6a68e50e48b05a78b33522
prerequisite-patch-id: 47bbfe0f0b0925395f158334b11173a51dd98b46
prerequisite-patch-id: c9fdbbeb8d0f8ffa6dd0ea918644c2e25f5ee35b
prerequisite-patch-id: 11fa47dbd32998a2d792f7723f2eb5e64a3073d2
prerequisite-patch-id: ed585aff28c73dc0fbf711480249c657b6323d27
prerequisite-patch-id: ba3e785c33cd2ddc11b816f1f4c4a82284bab928
prerequisite-patch-id: f56834dec938cf245f938d109e5494d9fb3bd6d0
prerequisite-patch-id: 52caf5f5f21cbc4c64e8becaa2eda141fc1e301d
prerequisite-patch-id: a86594290a54d516ac10e57ec62c70be836e7c66
prerequisite-patch-id: 7a062e49dbafec8981f27846cda532025871f880
prerequisite-patch-id: cf2c4c0659ace6b27bf84b9ed4a3307e2d87e047
prerequisite-patch-id: 6488499de37fdbafce9d1882d1d495c05d29fb1d
prerequisite-patch-id: 5e30fde7bde3f9a089fe20ecd9d7cfbbf21afc5a
prerequisite-patch-id: a9a6618057127958ae6081400d025fd1fa6616ec
prerequisite-patch-id: 85bac4f3b79b7c294fd0d4e7d32f069644fdbc17
prerequisite-patch-id: b179e8a72a5f49fde064fb601c07ecff8f60b351
prerequisite-patch-id: f5e30de852d32ce059ce797f357382a253adf5ad
prerequisite-patch-id: e0841444d0fba60866776e644251a86cf83ca428
prerequisite-patch-id: d07621ba16ad0250254ef85f6837e136ebc1ee72
prerequisite-patch-id: 77404131104f6d8cd899765726fe7e6b41d5af6e
prerequisite-patch-id: 1efb0a90152f60b3766eadc4e3bc0b4c365baf3f
prerequisite-patch-id: 29b8d44f874ca21af3386a8edd78723dc383e81a
prerequisite-patch-id: aefd14e5e6854293c16ad58d07fbb8fadbbaa580
prerequisite-patch-id: 9eadee8f3dc08a463ca8faeb88c62297eff4bf1c
prerequisite-patch-id: 3e4f3ff1e7a1bd154eea050df659363725570dea
prerequisite-patch-id: 69914c053c97c26e79833030aead08f44febf83e
prerequisite-patch-id: bf3e8367ac76e6bd8fe2e1437a9f4ff9570aa077
prerequisite-patch-id: 5876cdf33b194be2285f82b8b42523d2e4f0d548
prerequisite-patch-id: 22f2a4800eb5c6fdcc2d606e1177f5ac7e946188
prerequisite-patch-id: a91341ca760b04525d4feab0929ad790d8a48db6
prerequisite-patch-id: cda140eeaddbfbb61e9c87b282a10a8e76b31ffc
prerequisite-patch-id: cbfaf3eec648ae723284dd3edf656eb1d9a801d1
prerequisite-patch-id: 9b2c0674f6652181ec7ba0b37d9fbaabdf7e6149
prerequisite-patch-id: f2fc2f112dca9aa3328d5693e3337130fca77623
prerequisite-patch-id: e72d74cf6294a42687afe2899c32634345176e0f
prerequisite-patch-id: 280b321f404448b12c63bfbddcf7dc8670d129b0
prerequisite-patch-id: 2c0bde95524e2d836c141e015282bbd34dbed5ba
prerequisite-patch-id: aeb714370e57cd2df1d79aca554b00fc570de8ce
prerequisite-patch-id: ffd8031b2f1346367fe1acda1014e90fedeafaf1
prerequisite-patch-id: e0ad22b3c7e07b2675194e1a0dd2351b1d2dee70
prerequisite-patch-id: 7f43cf63eb4112ed11caff485a937562b27673df
prerequisite-patch-id: 565192185e9cc40d14e94c3231c65e8755d65639
prerequisite-patch-id: f024edaa7208cc6e89c17c43532721b619a6dbfe
prerequisite-patch-id: 0519525e5a054b642f4d858dde3bc1ab5f4276ed
prerequisite-patch-id: 3f2e269633dbed8eb27651115ee927bf2873ae96
prerequisite-patch-id: f8df177315c3a009e4d43678b4a8b548cec051f1
prerequisite-patch-id: 623f217d0856f17852e0c944bf49928f4a4f3cc2
prerequisite-patch-id: 547f995c6fae2c7eac58a859bd12acbefa032cf9
prerequisite-patch-id: b9a65b28743f5579146911b29922e49b812431b9
prerequisite-patch-id: 7c7e32e717299324294e1c1307d4b07d4eb36d10
prerequisite-patch-id: cd3291261b66e71ab00d77a303dd4dddb0db5dea
prerequisite-patch-id: 0fdfeda7864b3a79af983c688dfd6a7b01cdd2d7
prerequisite-patch-id: 14125e5c06f8b95359ffed144694f2a10421a0af
prerequisite-patch-id: 2f7f20e6cca6315e3d076ed6df551b203e2c36ae
prerequisite-patch-id: 05e8d1d03e82e42d294ad7607b493632e93638b1
prerequisite-patch-id: 214a6b989622ef05d9f85adc8fc76aae7e8997b9
prerequisite-patch-id: 22746f28c65d5404ed022e1102eaff280452d849
prerequisite-patch-id: acd81f9f31b08b6a842322ed0e2a3d9420fcfb73
prerequisite-patch-id: 46b1b77a34149d3ebe41396ef9dc3384aaca555b
prerequisite-patch-id: 444c5638a888ca81f922b50b89a7632b8d6e47a7
prerequisite-patch-id: d9a5ec41243425aaa9cdc1c56a1f252d8b6e2f9c
prerequisite-patch-id: f53cb83b12c07a22a7686518948375e8daf885e7
prerequisite-patch-id: 786dd2c11a9d0ad74394d81f3b1fe37d83f79452
prerequisite-patch-id: 6a208c9a47ee76e0bd24e5ed01c1f789dcb61196
prerequisite-patch-id: a668937859d90cc2ed8b66bb9157ec415ff71fbc
prerequisite-patch-id: fdabf894e9a20e405192a8cb7ec0af5c7c314574
prerequisite-patch-id: 2c30d9f0d66c59f19309b63aed6fc40bd518644d
prerequisite-patch-id: 076ef0585b81deb481c6f6ed835910985b2703ce
prerequisite-patch-id: 8a5cca68a3a8ab92842962f733922eca685f689d
prerequisite-patch-id: 6538171902be1ff22ea4ff6296c3b290223cd3b5
prerequisite-patch-id: bfa775895d9e169d6e722c65cca022ad8df8ba71
prerequisite-patch-id: b4bb33996a30dd47808b1c8cea53ddd562216f17
prerequisite-patch-id: 72740ae55639eb03dc135586705c94f3962a3049
prerequisite-patch-id: 7e0bac616ed17d3da3e3fdb98501879f28aed078
prerequisite-patch-id: 2be76b753fadad11ed8dc079842bf34e8df68ffc
prerequisite-patch-id: 63c4736a58a51e907f2690f867fb70ebf2a18ee6
prerequisite-patch-id: 04ada555fcfb8cf38f6cf4520f5011472a8632b9
prerequisite-patch-id: bb69093f826d19fb9fd875dfbccf2e47b5cb619c
prerequisite-patch-id: bebf2d67705b85da432b605db3074db92be4fc2f
prerequisite-patch-id: 5020fd9a61bc328b3fc33c8c104c3c9354f982e6
prerequisite-patch-id: 1553a3be874f5552c0f4cd2751afa859042fcdbc
prerequisite-patch-id: 259ba5277443f0287ee30bebc22c7a1b09ab2d27
prerequisite-patch-id: 70beb1a1d3837602346f2bf69b2c4bd046982467
prerequisite-patch-id: d68956dd589219258de2cf4e0bc8a3d979cd9158
prerequisite-patch-id: 1e32c0479e1658aa8f373bf68e763db95034ffbd
prerequisite-patch-id: 798b12b90f3decb336400648f317cfbdc1d93347
prerequisite-patch-id: 076b7299f8ee82213a048c314500f852d2ae210a
prerequisite-patch-id: 04f8f3963b6e3a848e3e6040f7e9bc89c59a8047
prerequisite-patch-id: c5c3288e74f031f24a90df64ca344bba5ff13cae
prerequisite-patch-id: 2f49676e0b803a519483320a5b1c944c1d9e3bb2
prerequisite-patch-id: 74732bd19337d4d0a954ccc97e747ddb1b953a04
prerequisite-patch-id: 5cdb1a9fb330fe6c54415daaf07b8b43f3d96bfe
prerequisite-patch-id: bbd8cb18b448bcbfa21a0e252e6501598d2dc8ff
prerequisite-patch-id: fd69923c358e81041661c42bef606d024ef9d972
prerequisite-patch-id: b28b8f8a1d59b91d1b86394ca10cf71bd576a712
prerequisite-patch-id: 6edb191982f9254d4aaa0765557bdf0ca613a182
prerequisite-patch-id: 6d094a8554c23f3f1ac37d4b8cc82e18ec0673c5
prerequisite-patch-id: 3f8d84c237b1edaf05bf700ee8705f6b4b0804b1
prerequisite-patch-id: 68c174043f56bf2ccf9973a47946007a304c2e81
prerequisite-patch-id: ce233a7136ea77066c88e4013420f45d33bb4d1f
prerequisite-patch-id: 9871835d117df6dd73cbacc0aa6ae5e770cf60c7
prerequisite-patch-id: cc079fee4e787a88ddefbd80f7d9fb27b40651cc
prerequisite-patch-id: a50b3de50ffb7788ead259cc26327be9bb50f8ac
prerequisite-patch-id: 70aa9e11f17e6133692d48c786b8bc7452ba3888
prerequisite-patch-id: 9bfb05d4226e80da536e25e9ea6b93f53e01df9b
prerequisite-patch-id: 2492e7dfea80e0262721379da954307db2b58f54
prerequisite-patch-id: 70c7cb1488635b101d4b78d268458fc44f2c7bc3
prerequisite-patch-id: 1ba6148e2eda82899681351785e27ad455eac3ef
prerequisite-patch-id: d7312eddb352db7bf29fe37cf708b06fd9defdbb
prerequisite-patch-id: ab36c69a4cd91e71c077ca1cc8319e7410be056b
prerequisite-patch-id: 6f8b81b4b795cfc96ba2f662d5549de770c109ab
prerequisite-patch-id: c08d631d4d325ad7eb526f8361431617a1a482fd
prerequisite-patch-id: 1db0919e421aad3c1e081d32fe4739a9083fbbce
prerequisite-patch-id: f8b6abcc972e38c7e018d4b574ce80bfaaaf98d6
prerequisite-patch-id: 9bbfdc13421d02b45819b675a731d8018e0e4188
prerequisite-patch-id: 007943dcfae181ce9f9ff3068194651895eec1dc
prerequisite-patch-id: 96976225b933e52c5f5ec49b6ab9c9e4b1af923a
prerequisite-patch-id: f98e2493d3f65597ef13222f6eb737155c6d851e
prerequisite-patch-id: 8031c3860241d13ccc94dc7fba3210aababfb78d
prerequisite-patch-id: 94e12a0444fac2e0f483ebef2db84c2f1684ee1c
prerequisite-patch-id: b011025dd2b55063fbeaf262afbcc11f7ebb361a
prerequisite-patch-id: 9f6057b89729ea941ca4331d3724a85ed14e2814
prerequisite-patch-id: 9632535e330e25ac6c191cb509de951da3fb8ec7
prerequisite-patch-id: bfe3f1a5914cb59d154401203810360316ef5818
prerequisite-patch-id: 75193776754ef8c6f5383fa74919632e65c2a889
prerequisite-patch-id: 343d487927270c325cad3ed6d4ccfe089b3e1869
prerequisite-patch-id: 1ff90bd99c4424b39bde3cea4cc7ea07edb09696
prerequisite-patch-id: a2cbb8f0b1521ac9ef4960ed6b574cf49e33145b
prerequisite-patch-id: 4b0795eb910d4d6e0c28e388054d922eac6f7e85
prerequisite-patch-id: db03e9b0bd1b850916444e945d5082495a2b815a
prerequisite-patch-id: e251c57c72a2573b5c26d510b4cb27aa1327ba3b
prerequisite-patch-id: a83355a0054edc189611eeda04b3e3c453bc9836
prerequisite-patch-id: 508a0cb73f70c9c37e61a180d7a564f64c18699c
prerequisite-patch-id: fce95c49236862dda100454c131faaeff82ffa97
prerequisite-patch-id: 7896290b662e1ec00d77812b1908afdc3ce72b23
prerequisite-patch-id: cb2ae3f68b05197b8c091afbdbb255231c304e37
prerequisite-patch-id: afdfeab96ec3fdd4c26e9545f7e76884373d8a85
prerequisite-patch-id: 88d4639f08e9e593142ccdcf92c4ec517641a360
prerequisite-patch-id: 41ce09e18fb439791655a44f8b79a0ac10971184
prerequisite-patch-id: dae9f09d2aa9bd0392348e245f601547aeee91dc
prerequisite-patch-id: e0dbf57fbd1980a082c6caa90310ca90eaa663a5
prerequisite-patch-id: ef5205f2cf8d0460cf28a5337d63c2ac92d3dc23
prerequisite-patch-id: 3070073a16b81324c33285779dabfdb8546f9480
prerequisite-patch-id: 0b16ed42a66a428452631cd83f02969f615f245a
prerequisite-patch-id: 900b1a4e91eeb111fb3bbae5892caf70720c6d48
prerequisite-patch-id: 27fd1991a1b93616dad2e2af4d02758c970c02f0
prerequisite-patch-id: 97175da7b852d0cb7a3c174ea9bf88edf02fe718
prerequisite-patch-id: a9a67257830282443295a5e4202cf40ad147e59a
prerequisite-patch-id: 756a1a5444c9e46e88f6e84670d130a06ac68ca9
prerequisite-patch-id: e027b43b6bab1b689aeafef4a392309bfc0a531e
prerequisite-patch-id: cd3411eef9d6017948914592402c657efccfa9df
prerequisite-patch-id: ced96b7dcf19298c7ad0211ec2688742ce8fb131
prerequisite-patch-id: 900b168be988dde817cfc4cc61cd154604434d53
prerequisite-patch-id: b80b46e7241cd4399cea44538aee55bd6ce380b9
prerequisite-patch-id: d7dac1437993db706ed0f21d5ca8d1c7f81e041e
prerequisite-patch-id: e4957ff0ce80dd65614d6de58f22801c15a1bc49
prerequisite-patch-id: 5d2891c3357e30e43f5e4932932d91564d73e4c7
prerequisite-patch-id: 0b5ba9433104d0de01e27d9c3e5842ce8056bf4c
prerequisite-patch-id: d6442ef4fb353cf4d6d2ba0ea98928bd4b47116c
prerequisite-patch-id: 519c8b28c4b7e9b3bcc31dac2cd22fb064108986
prerequisite-patch-id: b9fbed6698579128410792ed8cbb3d70265d62ba
prerequisite-patch-id: dc9da7f6b1bfca3de2e9d2029369f35db48bb284
prerequisite-patch-id: b247057ed0f64be9b806b831ef35fe3fcf9b6fe3
prerequisite-patch-id: 17e5cf41aee70412bc04a73d36ddd4587fefa915
prerequisite-patch-id: 5156cfa5f1781ee22b4ad670e9b4e4831d297bd7
prerequisite-patch-id: b8c199f3055eada5b9a09329d146e2979a8bc742
prerequisite-patch-id: 70f480e2d2a58abf427374606f6b5227308bcc79
prerequisite-patch-id: b9f5934d65b12583acd309bc0d779eb9db4ac3e4
prerequisite-patch-id: 43284c801c70c5ddf82ae8dad38d3dbbfa40bf5f
prerequisite-patch-id: 27d1dabdc81b61be2fe2c67bb84127df91b3466f
prerequisite-patch-id: 3c1a474286187057e0b592440b7adfafc0ed73f6
prerequisite-patch-id: 3cc61f1bf1ec7f1074015a036e23a74e1eef4173
prerequisite-patch-id: 0e04aba8f8c354c016b8a6809eeba6dd7be059e4
prerequisite-patch-id: a4d69e7b42aa7ad4434239735cec7b476c4e9f28
prerequisite-patch-id: ec0834f71803972c37ce5483c11a1cf5f4ecc88a
prerequisite-patch-id: 1bcd9b75f66480dc0fb34056d927d13e4d7c19d4
prerequisite-patch-id: 03bfa4a52ae94c23f4b2ac4cccfdbdba1eafccf1
prerequisite-patch-id: d64d6446b0bced928deebf6818e543e00fc90019
prerequisite-patch-id: ff21891d78987666d5f348d60d0385e822316aed
prerequisite-patch-id: 2d7bec645e3231fe65fd1abd09a0d1e4fe043b73
prerequisite-patch-id: 5834235db47fdc98b40bf2af9ed623256da99ee5
prerequisite-patch-id: 6d5c8be168da1328a1945cb1252a81383ae7f8da
prerequisite-patch-id: 29fd626e2b635e9440c0298ef0e59fddcd9c5be0
prerequisite-patch-id: 0c851d62eceeffe8214aa100fbeb2a4c9f315899
prerequisite-patch-id: e013569f24038e49c3deeb5b2c36badc375c2714
prerequisite-patch-id: d6b9e8bdce9295191d7a566b74688512e7259564
prerequisite-patch-id: cd82409849bb222240bf0bf28bd6b857e6eaad45
prerequisite-patch-id: 23f635d1c662306cb9b26bd73f432f5473f565b2
prerequisite-patch-id: 09ddb84e7c14290587e60ad8ca585aff90fc51d8
prerequisite-patch-id: effe71c5134a170a1b76d92a7e7c600ac63cd331
prerequisite-patch-id: 9e4d43aefb61915405deceb41379815c300553a8
prerequisite-patch-id: e503bb11ebf878aa5e1b1f8717a0c8161317277e
prerequisite-patch-id: eb2920b962d79138a932c59c1fd9d2bde84378e7
prerequisite-patch-id: 25a0a5c7303675eaf19515b7bcd9c390886a1155
prerequisite-patch-id: 90d4083102c6ff52bec006a80e3e1d761ad5f551
prerequisite-patch-id: de7b47238d615d796889294135a9ca32eade9fa9
prerequisite-patch-id: 671d8e11ccb007091409ee929c3b746186d16330
prerequisite-patch-id: da83a7988e7e487f47d331060ddc7adba2c1d757
prerequisite-patch-id: 256e218f5b84979e5289b968b652c157169efa1c
prerequisite-patch-id: ba3995b30d6fcc56e642834c2285c17ee1b9b4f7
prerequisite-patch-id: c5ee9741af044e107d7225f7c1b6698694facbec
prerequisite-patch-id: 423ad767d6d19c41fc081676caf1b77193bd4f38
prerequisite-patch-id: 9bf21e5f5e28360041e336ada1d26fd999bbf0d7
prerequisite-patch-id: e51e44b38c00a0efcbcc5915e0f60ceea941d39a
prerequisite-patch-id: b4cf1935f0641866f96b6c7ea36abf1bdeecab52
prerequisite-patch-id: d8cbbc58d87708a0b1044fda63743ba1c26c2af6
prerequisite-patch-id: 0502d2fa47814066ff39c89cd160bfa422cad2c7
prerequisite-patch-id: a5754fe09233f851c151ce25d8451209ede82da0
prerequisite-patch-id: 184ebf5ce3ac1727ab62ffb40728f8c87434a52d
prerequisite-patch-id: c547a2816592a5d09d20bd168210e9c7bc1502d9
prerequisite-patch-id: 06ab34a80cac1d7ef24cf507c232f40423c85fb0
prerequisite-patch-id: be030f4aa37937ae0dbf33019514a79398225077
prerequisite-patch-id: 383d5aef086cda4da53b234c1165a6290285a946
prerequisite-patch-id: 4ce619aee373232a20e4bd870223937ab4a5cab0
prerequisite-patch-id: 565a555e5f1f70644bb4f2dcafdc26dc9e02bc56
prerequisite-patch-id: f51c0ffbdef53813533fb269c0204c0caddfe6da
prerequisite-patch-id: 168a090bc6ff690d7b99415f701a195fde406aaa
prerequisite-patch-id: 954b558d7e80aaa5ccb8b154e330ea9ccc812be8
prerequisite-patch-id: 02d3a5d7a08a46f163e30367e916f217caf6fa06
prerequisite-patch-id: 79575a88865339dd43840abc33913e7e46a88f28
prerequisite-patch-id: 01fd43bffdfcb044dfc7cc544957f119857d8e80
prerequisite-patch-id: e6f82553f701f8bd2977b1bf6e5f8003b46ae8ed
prerequisite-patch-id: 266197e4bf5939a23f58c5bf88660b43462dc4d8
prerequisite-patch-id: 113129d3f83f6c966c8302ac9fd19008c9be3213
prerequisite-patch-id: eff80127f37bb8df12441315a9a7da3e7ce780ea
prerequisite-patch-id: c01290eab9fcc17c50649c55e4caed2aa473d716
prerequisite-patch-id: a98f8252e913a634c1dca32061b8cc5ddf3005d2
prerequisite-patch-id: 190e5d00a888f1246d7552622dd7d50a05dd2764
prerequisite-patch-id: a1d21ac710beed910111f742e14520e2ee51bc23
prerequisite-patch-id: f68b8993b6b44bf7df9bea5baba452cae204526b
prerequisite-patch-id: 813037f5068ced3feba34334f85cc2343f17ff14
prerequisite-patch-id: debd9659ec725fe18f02a925c8d5f12994e55370
prerequisite-patch-id: 0739ec227a4760732cf874679c8681cbe12ce136
prerequisite-patch-id: 4429866bdce26afc4f9152f680e47334f65368a2
prerequisite-patch-id: 5ebb1e1b3459890455edf73a1f9ab270e2a75961
prerequisite-patch-id: e9b10c33a64e3e8ee2cd7af735ecc05330daadfb
prerequisite-patch-id: 3307b26f61888a27b5124e9a4eff67d4efeabdf4
prerequisite-patch-id: 258496117b2e498200190910a37776be2ced6382
prerequisite-patch-id: 50f58e5d9c6cd2b520d17a7e7b2e657faa7d0847
prerequisite-patch-id: f097d96fcb47d25fe33b8aac9e636e621f88dbdd
prerequisite-patch-id: 20b0571ac9e35dd3fe11b6a1f483e3c88543b125
prerequisite-patch-id: e1f6a3b7afe78e161a579a7adfdb1bcba62046e1
prerequisite-patch-id: 172cea5da525b8878643a7c38299e6b8976de511
prerequisite-patch-id: 42206d842e2fde7e187c6043f89db1866bda4eb2
prerequisite-patch-id: 5fd9bbb70c5bdf9936bca93e1fb230c3fe967a88
prerequisite-patch-id: be6cf92a05264290d1d96e52967ae131a35d159d
prerequisite-patch-id: 0a328b4ffe38eee3c61654a0c07e35bf1ec6e17e
prerequisite-patch-id: 3d1717c527bd69aa0019477e6621f194cf1c5d82
prerequisite-patch-id: 969aa135726b25fc6d723f64a7a9a053fec27e8b
prerequisite-patch-id: 3b8b4ee037c949bddaa6363748c38a0e8c63ba47
prerequisite-patch-id: 00209dc5ad0d41bf76ecb4b8b115afd0ca2ecf1f
prerequisite-patch-id: 44bae3176f0e7b36a796d2270d0c98d277e5983c
prerequisite-patch-id: fb1ed018132d2f4eda1dc90595714841970084e2
prerequisite-patch-id: c1689072d9373e924277fbb1fcf188ac539929e2
prerequisite-patch-id: 79af4f24460e8a80c78d4ba7f69d058f956c6a57
prerequisite-patch-id: 379ef7761b91124df4c309da07bb8065e695b708
prerequisite-patch-id: b0dcc7954330b635cf2735f1142e469a63045f67
prerequisite-patch-id: c84ff3ec4e17110493396a3d8b9c534033394d18
prerequisite-patch-id: 8315b484ad21552cfb8994b5920f9b0b124e9b28
prerequisite-patch-id: d0d6ce589a57f154e8fae43b199df283ce3b50c4
prerequisite-patch-id: f87385cdc4ea2df9540a45ae1baeaebf13b592e5
prerequisite-patch-id: 374c0c0b698d0143ea39dbc7f51f12749fdc982f
prerequisite-patch-id: 6b3b7ab6e3c0e6b793e2739b65fccc7ff5f5994c
prerequisite-patch-id: 4984b7eebf3d360329d0bbca42fbfe9e5cbc46ee
prerequisite-patch-id: e673670104b0f641e08b48dcbaa900e436603a8f
prerequisite-patch-id: 12e657c1961cde7339fe7632ec00d42d85f884ad
prerequisite-patch-id: e930778c01876e57e5d353d7a0d4845215cc0922
prerequisite-patch-id: a23388ec81ee0236cc5f666894752ef1360b9696
prerequisite-patch-id: ed9f5a677d712c99276c2575678af42a4cc99cf0
prerequisite-patch-id: 3acb42e621d83550e25cc512a858715cda23dfaa
prerequisite-patch-id: 5aa418c923c64c14e883f2473d237aef88f9a817
prerequisite-patch-id: 6620f98b4c94190e506abc62c45a830c7164eb96
prerequisite-patch-id: 6a817041c33c37cf3e32726f216aaee40789a5d6
prerequisite-patch-id: 050e4feff4ca89bbb84ced4afad373cea1aa103b
prerequisite-patch-id: b5d4b1f17cd335f7530b358907eea8ca10965c51
prerequisite-patch-id: d4d6cb4ab3675206877c9b9e6506de8217108257
prerequisite-patch-id: 7941f0fa1216de31c401877549cf7b226c9a47fe
prerequisite-patch-id: 71622f5e5a59d7e9ec2e2b2cd2204982c033174c
prerequisite-patch-id: 77c5c2eace88b436597ee1d0e47ca17dedac0ed2
prerequisite-patch-id: f6a36009f662c474442d592ff6fa471a2ef05f27
prerequisite-patch-id: c165dfcbcaf52ef23897e8ad50c977f47029d769
prerequisite-patch-id: 4d35d6fb231824bede802f6850a8aee53ba59a48
prerequisite-patch-id: 25eb117987023d151a08700d2e7e5c1b2a1993f8
prerequisite-patch-id: cf7e0a9f29b85944885b790a82cb0c1288613fd8
prerequisite-patch-id: d1d4c80153c06d5a8d132f2809884103d102a80d
prerequisite-patch-id: 7aab590b7788dc61a1454d9b42e585c06e2f8cad
prerequisite-patch-id: 531245e674d632462c772dec6d8d17dbb6ab7cc8
prerequisite-patch-id: 35a3b5ddb9a6c8298e7fa979aa4fb64f68284098
prerequisite-patch-id: 27bdd367c0c30758a431f862ef14f56c12fd1379
prerequisite-patch-id: b62fde8f68627327f75279444fcfdf649b581691
prerequisite-patch-id: c5652fb01dc9889cc1fb26abe47617bbe26fcbed
prerequisite-patch-id: 1b521056b9e37621f574d395d589e8fcb7bf399e
prerequisite-patch-id: b7df4c7adcfde375c44e40bf94a4d8f6c5931b7a
prerequisite-patch-id: 709832666bdd639984fbd86b3f4f5ce49063423e
prerequisite-patch-id: b75087ec1f0dd63beff47724a330ae4dbe276ec6
prerequisite-patch-id: ab83c4a7eb32c97b32455456affca4a105275366
prerequisite-patch-id: 47c830bdfc9b159adf90514b545ad0d4e8139785
prerequisite-patch-id: 3ae65f908574881b5371db570129bdb062890c7e
prerequisite-patch-id: 7abdc1eabfbecf343742b0b2bda1398af229020b
prerequisite-patch-id: 0a7c611c15a0f93faa54f1b017e8ac2e85af8c46
prerequisite-patch-id: 3d82ec6b6cdeab6b24154a6b27effd236ae1f84c
prerequisite-patch-id: ada7c9482b0c51bdcf9e9dc26a343253c8282bcc
prerequisite-patch-id: 7179a9061cb7588bba0f5f56e4445e94ce264756
prerequisite-patch-id: 03dee749d62cb48405bcfee6b07f99355a3505df
prerequisite-patch-id: fd42bbf056daf521887999c95e358b5bc66c8637
prerequisite-patch-id: c58329ba85184b4659e89e792be62a49b8b089f4
prerequisite-patch-id: 2fdc6908dddaf502da6447728f0b7dbf97976228
prerequisite-patch-id: 35ab35b842dbaefdf9d5b05c4a4ee754305b5a39
prerequisite-patch-id: 70fc9760f94b95bd5b7a3e9c5c5e70ea2af41a7f
prerequisite-patch-id: a87f2ae0063f4e106f2cc6bf21378a7b5f56248f
prerequisite-patch-id: ab94614296a52b47be7c8103b222e20f964bc408
prerequisite-patch-id: c0b4b5cb35a95dadab22b71164408ea2c2167918
prerequisite-patch-id: 3d9e4b556187331ec485eb7c6a82c6de3430c1e2
prerequisite-patch-id: 7e2f0424f76fce3948759cc54b1c7750f150d333
prerequisite-patch-id: af9509023430878d5b00218850a79dd2dee655fc
prerequisite-patch-id: b3b97c5acb35e6f3950739f86ab1b59acea557e3
prerequisite-patch-id: e6644457f0c825ef75ca941379c6d127dacf1b0f
prerequisite-patch-id: 2d0a7e6fca6b3ece508a2a3bc678e96da7ea4d53
prerequisite-patch-id: 08ea9571b3ab60da95c7df0b2e615885d3075024
prerequisite-patch-id: dbf5dd8be174f87e32c12786f07d8083e2bf7126
prerequisite-patch-id: 3a0c6ed6975fcd9badfb29501c47a0a282a3bea1
prerequisite-patch-id: 6dbfb5fcaec5acbcd6ba044adc29b6a6dd18c881
prerequisite-patch-id: e1ed65e9870d59e81b9d6896fff4c5a0d82e47e3
prerequisite-patch-id: ab42a87c2882c8f23631b9c22466265e1986fd7a
prerequisite-patch-id: 697c75a80709f83f0aac36ec1016ffda2a7031f1
prerequisite-patch-id: 1450a097113d5bb780fce36470029df348882286
prerequisite-patch-id: f19ec6c9bfc087aad26a0f3395bdab894de64548
prerequisite-patch-id: 7e16c399bda5d4c517978ecd61c71ad1456ea71c
prerequisite-patch-id: 910b8b1aff833f074c64ca5b98c0a47bb6f1a832
prerequisite-patch-id: 7dc22d3073d951587285ea83e234bd20f56d4b2d
prerequisite-patch-id: 1fd68c027bb9270d015e8fad67aedf1cb2be548d
prerequisite-patch-id: af21dc797b975696d7a398814696bce713787c66
prerequisite-patch-id: ccaf2bc68ddb53f38901468aa6754b27cd8f0842
prerequisite-patch-id: 91fdc075a3c6cd6002b29e1127662d1b8dfa3dea
prerequisite-patch-id: 7bb979ad479c3f89d72e0499fe30471e7b43b7ef
prerequisite-patch-id: 0ba6186f3bc7b2cd7f72d61b529c90ebf02932b4
prerequisite-patch-id: e5af13596ee11465a8f62ce97f65b0e5750bb77b
prerequisite-patch-id: c011c388fb77a9b50e647f7af46892b90c46259a
prerequisite-patch-id: 1cbb08e46f994e4024a6a85586939c5ccd49fdf6
prerequisite-patch-id: 95b2ef89626f222113afcaa17aad749471a63617
prerequisite-patch-id: d00664b84d006a0004452fa572e3bdf6f1486a9b
prerequisite-patch-id: 90eb216985b525a849fd2ceb12423b7ff004b463
prerequisite-patch-id: 1743ff2c9a5c253b4f35e61d35588429503c4c95
prerequisite-patch-id: 302b3851ab22425bd55015189470810d034a0fbc
prerequisite-patch-id: 6a51a4f9dc198503deefce1d144ec5e8f04640bb
prerequisite-patch-id: 2da8ed69531b830f4217d5c90367e0f71b26a20b
prerequisite-patch-id: 7851b05da8f9506917adb6cf5ddf711ab466dcc3
prerequisite-patch-id: 7544d6b15ac9f363ad3542bcbe21e80a3b48875e
prerequisite-patch-id: 86bfa2797028b892ea27b651833647fab03b455e
prerequisite-patch-id: 9fedb11b0d315d404fb7cb786906fdbb3b043f97
prerequisite-patch-id: 940bca2cf2ac97046a240b51e55a1aceb21d2567
prerequisite-patch-id: f8a54a14d8690009e39efc3a2e7261948cfbadb6
prerequisite-patch-id: 81bfc96478b19510b276d472b59caf95ba31371d
prerequisite-patch-id: b925a9032675d4bcd8aa1cd86eef7efd8880de4b
prerequisite-patch-id: 63d3c2994887ef6f7b6ce873f1d7d771d8895341
prerequisite-patch-id: fa02633c406f861c2d0c74d0873eef1dc28126cd
prerequisite-patch-id: b85c5e4cdb677907c244d97ebca8dcb5dfc58b4e
prerequisite-patch-id: a6e11fbd22703830688397f2738bc35127907e83
prerequisite-patch-id: 475a7607326ac10a5e90f043c291d1a59a34843c
prerequisite-patch-id: 43d49cf72f0d3ad4d83942dece41eb3ce1fcdf0e
prerequisite-patch-id: 53539f58161a491b62423151457ec0f72c12dc6e
prerequisite-patch-id: 1f7b5d3062836a85be233225fbefa66bdfd4040b
prerequisite-patch-id: 6b3b7ab6e3c0e6b793e2739b65fccc7ff5f5994c
prerequisite-patch-id: e930778c01876e57e5d353d7a0d4845215cc0922
prerequisite-patch-id: ed9f5a677d712c99276c2575678af42a4cc99cf0
prerequisite-patch-id: 3acb42e621d83550e25cc512a858715cda23dfaa
prerequisite-patch-id: 5aa418c923c64c14e883f2473d237aef88f9a817
prerequisite-patch-id: 7941f0fa1216de31c401877549cf7b226c9a47fe
prerequisite-patch-id: 709832666bdd639984fbd86b3f4f5ce49063423e
prerequisite-patch-id: 99bc20aa698594a69d34a577537900d25b1dbb40
prerequisite-patch-id: ab42a87c2882c8f23631b9c22466265e1986fd7a
prerequisite-patch-id: c67bd9571960fce82e3e1af3863e53d5bbe89795
prerequisite-patch-id: 7bb979ad479c3f89d72e0499fe30471e7b43b7ef
prerequisite-patch-id: 88d92a182f71bcbe0e6ad2bfe5b8d672d609bc37
prerequisite-patch-id: 71b82c7d88ef4e61e05c57dd18742899cb673e8d
prerequisite-patch-id: ae66e742a1d560762ce0e248795354cf61b31957
prerequisite-patch-id: e2d2a8bcb913c235347cfeda8cb686dbf978b8e7
prerequisite-patch-id: 6ae69abb296f984fa813b1f2551212cba4d8fcec
prerequisite-patch-id: 9824556a2890384e4684fccafa7a0cee4855b655
prerequisite-patch-id: 23391e74d9453b2cb8f7aeeb67ded239b97283b1
prerequisite-patch-id: 7c364a792143bd897934b8935884b91ea456808d
prerequisite-patch-id: 140a1cfbb92e179cb0fd82a2c48f2acef4435ce4
prerequisite-patch-id: 34032613f495c279a25f4159eab1e3ba96a19b49
prerequisite-patch-id: 706d66111acf4ea196283c40d3c8eae21fb9bc5b
prerequisite-patch-id: 53040a95c141173d6765a2b0bf3920af86249d72
prerequisite-patch-id: da926e5d3d4342e074bf35bc32cc41881b25a032
prerequisite-patch-id: f0a6a458f2ee2ac58de4c8772ad94ca350cbe8b6
prerequisite-patch-id: c9c15a7caf33fb3c61ad050d3082e315ef993828
prerequisite-patch-id: 19508702bcd6e1ffc79d470ae37d61168d84da68
prerequisite-patch-id: a7339b50ec165b51d33b8372dede839cfad8fc75
prerequisite-patch-id: c1483f6a9bc85a5b515e099c296f54ae72cefee4
prerequisite-patch-id: 15996c0d428d36f69c73dfa49c0644885fb70f0f
prerequisite-patch-id: 7dc798e015aff28172b0a016e67290c0c44e1bd2
prerequisite-patch-id: 57f2312914282300d97f6aab98801dc082da23d1
prerequisite-patch-id: 69c7259d0e7a79ed8936e10b66fcffe1011da98a
prerequisite-patch-id: 11dab9f4a3683559d98fe874ed01b7061b6a4f79
prerequisite-patch-id: 8ab1d61887d8214ba4941611fdbffad4d6ab3883
prerequisite-patch-id: 13e6ea5fd99b820a3e9e0d2bf2a78802a0452ebe
prerequisite-patch-id: 7ae530bcda085feb2cbc8f95e2d38d66a0ff8fde
prerequisite-patch-id: fb8c90a5ad6e4c8324ace617b6790aadec32ebac
prerequisite-patch-id: eae734728d4dace3e4e9065b42cf71c2c9826fb4
prerequisite-patch-id: f5a2c330f6ec51d435d02468c0433195c6afb9d3
prerequisite-patch-id: 6ae137a20b00855416d37be19f7df0bd8471dde1
prerequisite-patch-id: 0589155ec3fc35c2d4067655e131429edaf516b3
prerequisite-patch-id: 47a9c404238c2efbfe565d461171f61b1a57e4c4
prerequisite-patch-id: 19ce742dde1aa7388510f68b00b62fd73ad67982
prerequisite-patch-id: 8b8a3f604eb20c939ed1483eb879bb426e52cf9f
prerequisite-patch-id: 41df06822717b901da9547a261b563435de99c5c
prerequisite-patch-id: ceb1f69c443d841b243fdf1b2ecf336292986cbc
prerequisite-patch-id: 47e9fe32db1891e0c39cba173c2a01238d61dac9
prerequisite-patch-id: 33048e25e932de307fafb3d60c9bf8197945fcf7
prerequisite-patch-id: 4d96bec07427c2d10ee8f99f15fd8219f784d1de
prerequisite-patch-id: ac11617d4a1e1c34f7f26d8c0a91d68b2d4c6100
prerequisite-patch-id: 56b0102fab4b3e60bfdf2967119267b09663e3d1
prerequisite-patch-id: 6e5a6111826726b6189a6d4d92c2f57aff50f282
prerequisite-patch-id: 98d0da8113e2d20470c81bcbf6843770857c2875
prerequisite-patch-id: aacc84a5ddc9af8ca06262cafc07110c6e7ee43c
prerequisite-patch-id: 0edeb6b997756beb0414d5d32d3bcb6db3d6f18f
prerequisite-patch-id: cfa95e465d47c540341353f0bf25e99aaa5440b3
prerequisite-patch-id: e271e3a79edb9755306267ec504283a9914a14a1
prerequisite-patch-id: e58dbdb9926823c65705ad5f0816d87ffba1e5a2
prerequisite-patch-id: ab627be64f4de2acf1316ca516acba528127d9ab
prerequisite-patch-id: 042f5106560d98679220200837b74e906e6b6cd6
prerequisite-patch-id: 27f7bdc277f237b121f94bd0d075de2d7c57db1b
prerequisite-patch-id: e549ee65296d7d2f6de0cd3ba97587090eb9f359
prerequisite-patch-id: 728b7f79736e3c3c3c4c68dfa8f832b0a36f82dd
prerequisite-patch-id: 390bb39f04c430aa4db18eed847c679502319c15
prerequisite-patch-id: bdd1fc1a8443f5f7effe80fa80fc0bb06e5baa37
prerequisite-patch-id: 8e578f06d91b6cb516f35057dae1a5b753057088
prerequisite-patch-id: 035deb6b0a5542ce049bd2d3740820340ab1cf14
prerequisite-patch-id: e8139b2e1415c1bb4a61c922689b7b75d8cc9b03
prerequisite-patch-id: 309dff435a1ce7f332396fe6a9fece0822360d35
prerequisite-patch-id: d4f8116a0deb02acd378e091a77afd6a430072cd
prerequisite-patch-id: 17fa1f9eea4ec7f79c257ed5b130cb3e931cfbaf
prerequisite-patch-id: 861d576401a5318c49167b17cf589d1a8767c85d
prerequisite-patch-id: b46fe1c1599713c3cc5ae55b2c98786390995266
prerequisite-patch-id: c2912dc8feac6bbf5fdaa17811f7155d6977b8dc
prerequisite-patch-id: dd185d58e8e36a5560e595dcc677078bebf58579
prerequisite-patch-id: 806a7fa95a429f917ceb2e9a4d1fd549e57befeb
prerequisite-patch-id: f3e18de1338c429ec85ebfb3c307cdd4e1c83804
prerequisite-patch-id: e8b8ae227e9b1a543907367fc763fe969e15d56a
prerequisite-patch-id: df8e7e697b87516a067e83a96a7eaa4866120adc
prerequisite-patch-id: e0ba2016186baaa32cef260da7cbd035b06fd059
prerequisite-patch-id: d3fe2f2e5a0bbafc54cb82db53cbcdc62ae332dc
prerequisite-patch-id: 0a44cf8c02fb143915e5d36a72b1a34fa83c59ff
prerequisite-patch-id: 74070faa50e98a3637dd076c289f295e4a69ac6c
prerequisite-patch-id: 97ef4c73a948bfd2adedf2942bbaf477327def7a
prerequisite-patch-id: 04ebc9b5ddc51a525939e627c57c99e701e13e6e
prerequisite-patch-id: 645b99ae91e14d34ad5c9ce51ea1b4792f31832a
prerequisite-patch-id: ad8119514a3159d105e24c9a3e994fae8dea1eaf
prerequisite-patch-id: 224da537c5a5087247f22da455c3676afdca437a
prerequisite-patch-id: 992940b309b66598456025b35baa21ee838c3ea9
prerequisite-patch-id: 499de94906b89194315790583659fd528ac91302
prerequisite-patch-id: 893439906ab5b178cd5f62d20f23e0f8430b0c1b
prerequisite-patch-id: 8cbf64db4c5c5e90cfd75a6b1c6aa3a4aa70f581
prerequisite-patch-id: 8e8c20997a6d469e2fa9511b9c19ca3baac9c53c
prerequisite-patch-id: 56976104ebf656f000759bc74deefc4185973643
prerequisite-patch-id: 3cb5df4c08161ea70f231c806a4af8e2ad52c254
prerequisite-patch-id: e73f41552beaa8cd2a573f25d9a3db36d09a1fb1
prerequisite-patch-id: e109caed844d1c7782f18c90c5c92dd5bf6ebfdf
prerequisite-patch-id: b62abf754836424d8a0470c268a0422d65120898
prerequisite-patch-id: 7fb2cd27e6412abc7a1315bcb86b061a4bd5cb0a
prerequisite-patch-id: a750af5fd8b99162ef097187314bb2652de55128
prerequisite-patch-id: 72b92faa02ec8ecc7d37ea0ace2a1ee0ffcc6f34
prerequisite-patch-id: 6206dcf05153837f9b6ab5ae514fb31eba897116
prerequisite-patch-id: 2f6a9a0d0073d8a1352f5f674fc3181fb2586cc1
prerequisite-patch-id: 27e281f89eb9e71bb7deffb4e7e74124205a6a6d
prerequisite-patch-id: 5dafa3f5d2eb8dccc6dbea9157a2a166908916de
prerequisite-patch-id: d37b3aca26185d56b316a689c2abc2dce2338c61
prerequisite-patch-id: a6a4742bae27e5428cd8389cef7f288690d27c4d
prerequisite-patch-id: 6b4cf84a313f9bf087ff2dbf96c4d6fa2c32c356
prerequisite-patch-id: ccddfb90c95ebeab6bcce5dd8076b2ce726bc950
prerequisite-patch-id: 1c3b9ec5a4b6115ed58684ef31b70678196dda3d
prerequisite-patch-id: ea82ec3d0d94f294162353637335b0c3722ad7f6
prerequisite-patch-id: 746f07288c2fecd554a2df6031b699592b6a64de
prerequisite-patch-id: e93d728aee6a49f60cb31693d38cf51bb62492bd
prerequisite-patch-id: 71e1c316bc85a0a5af40c398d1917bb464cded51
prerequisite-patch-id: 21f14b55b8a53b905e044981f678dca768bd2e77
prerequisite-patch-id: 4cc403b98ddbd50dbfbc0745257327f94c5aad9b
prerequisite-patch-id: 3afb2b72cb8c86e39a606d3c92f0c999915aea16
prerequisite-patch-id: e1fbffbff09d86639515b2957a8b2246a96d798d
prerequisite-patch-id: 959cdaddced24b79e9a24936f7d6d74ec18137f3
prerequisite-patch-id: 40f0ffb81b38cac398593cba7c36083409b18a6b
prerequisite-patch-id: 6839cf389d967d96da6351b80be379a28a9cf737
prerequisite-patch-id: f0f953e394c24d0cee3fe6984fb57817a2c3b4f4
prerequisite-patch-id: 30b4d24bfa4bde2783b5f06d22eb26aefae41ce4
prerequisite-patch-id: a950ae8a84dc19694483223af193718add3e1839
prerequisite-patch-id: b57edd4f5cf8892403543dbadca749202a21cd94
prerequisite-patch-id: f4b9e498dbb9a1a61a726259949a750ef9c0245c
prerequisite-patch-id: a22bac17c486a460337c2bd54448015687ad43b1
prerequisite-patch-id: 896c2619b2f144b94db752926ae575f85a362c4d
prerequisite-patch-id: 6e960285c89f2604e6222a171cd47c347333d40e
prerequisite-patch-id: d5248d1796ca30c1dd47ec9420f9bb76e4c218a6
prerequisite-patch-id: b4b521410498596679b33675f03f12450f1c1776
prerequisite-patch-id: 1435c12e2167798970df856d75861c9472979884
prerequisite-patch-id: 4195f0ad9713d8feba54caeb32aae0f1de65c33b
prerequisite-patch-id: a579689ab27fac820690ed9a07593fab5e83e5d7
prerequisite-patch-id: deb9370ff8450221047bec2110576379277bba12
prerequisite-patch-id: 662104f22b2caece23fb37a96b7e928ba06eb4c8
prerequisite-patch-id: 087042674fb39250c92261a57a7aaad699657f50
prerequisite-patch-id: 2eb58a6c8e77a30efc2773ed535d8d827c62659d
prerequisite-patch-id: 461471c5ca754fc0ff19ab070cb96c78a76d6d7a
prerequisite-patch-id: 6322508a820eb4780000b529475844def1bf0584
prerequisite-patch-id: bd871028c67ec2dd5b75cf32609ff85e3122ce56
prerequisite-patch-id: c6de60e6601830830aca6143c0f4d972265ba8bd
prerequisite-patch-id: f9a717be8e3ffc0be5a8a36ea62629c55aff6531
prerequisite-patch-id: 3ce86b64c9016f184ddc58fd080944e18712326b
prerequisite-patch-id: 1789ec8829e0846be4418ced2c91421506968a82
prerequisite-patch-id: 9ee85f5c88114ab2070b47eaeb35e0b828622d01
prerequisite-patch-id: 1e6207d2bb41f033558085b22c97c0e7f3a6a880
prerequisite-patch-id: a55226a4377faf8680d3a9424cd475ffa3101731
prerequisite-patch-id: 43da9662af53f07031f2827e0e5e3053d1b1b99c
prerequisite-patch-id: feadb5a1487951e393e16a34be7efc070738814f
prerequisite-patch-id: f315dbba3be7060d42122ef65d555dc8664fdf05
prerequisite-patch-id: 38a91b98b265b6304569c66ed61ad3a65ef4afb4
prerequisite-patch-id: 10de58a13ba745f9c111c02155d6730eaf9e3d21
prerequisite-patch-id: 3bc091eeb0bccb2c721e90e00bc3ee15502c934f
prerequisite-patch-id: 02ae8b77dd4e3edc66d0ea4e8f0f246b3b348cde
prerequisite-patch-id: 14d3e5857362d2de607adf594077d3bde75f6412
prerequisite-patch-id: f97479b026e55fe4e17ed91d3edf939dcdeaa2b1
prerequisite-patch-id: 74342a36d39dc7c96500979cdaf2f26f8aa0292b
prerequisite-patch-id: 37814d904090e3b12b20f43b20270bf452910bf4
prerequisite-patch-id: d5fab570705bfae109d4652ca5ed0b96f85902a7
prerequisite-patch-id: 2ebc1961141906e0730b277f4219901cce9feab1
prerequisite-patch-id: a3f8f038c3120407797bfc198222316a911e8c45
prerequisite-patch-id: df334325f5145ba08761bfd1c8b0e8c5f95888ed
prerequisite-patch-id: f49e240f7e50ad08b0773f9f832042fbb37cae2c
prerequisite-patch-id: effcd79e9b4ababad04947080c30197a58adbb20
prerequisite-patch-id: cdc2a7b941037007a522897cce8578404bcf600b
prerequisite-patch-id: 8909dd3e897da3e7b4e61f448b2eee458c60e87f
prerequisite-patch-id: 22278ebbb8a14e90a309de930386f4b31266c927
prerequisite-patch-id: 745ce5790ec0fac410347d478db37334f25110a1
prerequisite-patch-id: 667f7e24975ba4c10137ed20d16ab14110048da3
prerequisite-patch-id: e1b0c8404a73dbf64c0e1f174e0a588e67afac24
prerequisite-patch-id: 98b2c3daf16dc80662951aa5a6a87c61331f6ca7
prerequisite-patch-id: 5c5bba3ffbf95b72600115b76197d7e17c0870f4
prerequisite-patch-id: 7b7315f5c1468fb31995fc0569fc16386d3e7fb4
prerequisite-patch-id: 54e60f070a6045af8f3c731e7f45b4e6ab31d103
prerequisite-patch-id: 110058b5adb92082f94d2121b110ff20556697df
prerequisite-patch-id: f516ba093836609c59a116bd8ca1da953b756628
prerequisite-patch-id: 83f32278f618aa0540dc68990e14b003f417fcd0
prerequisite-patch-id: 3a83d8b872c64581d956052e6c58bc7ec6474fc1
prerequisite-patch-id: 22cc9f54ac6ce123ac72585cecb5b849d527eb87
prerequisite-patch-id: f5f24dac00f2a318d4dfc42a26bcc1cdd44819ca
prerequisite-patch-id: 110cdb4b88a3dda15dafe51ee370e080b6bea655
prerequisite-patch-id: 9e58de0e578002f8ad114874685aba2ffec8499b
prerequisite-patch-id: 537e995308e68525ea597a3f31cb31b8e56191a7
prerequisite-patch-id: cf53dee4cd6af96331d4d9b09b6022148a5af290
prerequisite-patch-id: 0102a749925e293b8d14c672181449f08d9543e9
prerequisite-patch-id: fdfbd6062503bee0eafa0f9e9e593598efabc2ce
prerequisite-patch-id: 5bf5e738c0ae92b31a8c0cfe775bbd0d1d8b38f3
prerequisite-patch-id: c3b95891f3398e8d80394350f62d3b8a8e63b212
prerequisite-patch-id: 1027300017ce8c67260c31b0d311976a98fa4db2
prerequisite-patch-id: 9e7f1feeb75a0c16242f8d2ae3b919537cdce3e5
prerequisite-patch-id: 6a9f5f0cae4e41893b90db935e7641247e4c811e
prerequisite-patch-id: 9a8e592822d43a86976cff88c78c87365f55d5d5
prerequisite-patch-id: ea766d5191c0606cc2fa7a8cb78c4b85c3458a00
prerequisite-patch-id: e3383f2c5e322e150483e8ce1b02e3dd18c55690
prerequisite-patch-id: 76c9566152988376592e8f1ca6928a5aad3a1f43
prerequisite-patch-id: 1dbce28cd2204b6f4b18a9844cf3c2846b258121
prerequisite-patch-id: d24fc398301d1cdc36c0e8f98b565396597e6be4
prerequisite-patch-id: 83bdb121a3d1e2ce6df3659b548686eee3a8a1ec
prerequisite-patch-id: 000cd2f0d9f3bb050dfdf2ec8a20b5e80137d7f9
prerequisite-patch-id: 225516a2240e09cf9b4105e87d40cb641acb7fea
prerequisite-patch-id: cc17956e6b4b3954e6fa04160a7a0b65c89e8988
prerequisite-patch-id: 8152f301934d1d313532f12fbf4a412a52559412
prerequisite-patch-id: f8e351944e8f69fff8ba8b3adfe3ffc1342bfdb2
prerequisite-patch-id: 41abf36966eac6beb7ea8987f5b79e515592cf3b
prerequisite-patch-id: 0ec74f3e3f92ea6b0150e689b70441b1b7505034
prerequisite-patch-id: 2d47eb5848b760f1b23561b9db730d22e253453c
prerequisite-patch-id: 62c0679e6eedc7bd5132ac24c6b377a8919bad62
prerequisite-patch-id: 9ce750fe25dbd0b0a670a1e9af9ca6e2644f9070
prerequisite-patch-id: 2a413d82fdfaf90fafa9fa99d40bb234d5f4d4a2
prerequisite-patch-id: 0617bd9bd7da378ca069f8d4bafcd155f1ee1a23
prerequisite-patch-id: 1598e0d51b3841cfc82dc82c9e710ce257de9eb0
prerequisite-patch-id: cb4b3d10adc4a8ecc23711cfa436555f96c671c8
prerequisite-patch-id: bd3cf916112e14eaabc3e5cdb3c58bfc12b9f760
prerequisite-patch-id: 6fd176c3615f6db59f16746df4bb83338b8bb0e0
prerequisite-patch-id: 1996e2429f3ab41214f24b292036dbeab9647770
prerequisite-patch-id: 142e8f64873e347ee21c434edb6bf9af291a8877
prerequisite-patch-id: 1049931ef7ad348e4a1384c2a62824eef08168bd
prerequisite-patch-id: 980e5dbf941b39df4c591af1409f8e773d4ef3c5
prerequisite-patch-id: 38fb63396dbbcb2018bcca9a84dd47c1f2c87f4a
prerequisite-patch-id: 8b7aa0b3dc46a287f3cf16b50e27d8051ee1fe02
prerequisite-patch-id: c65cb9646b6274cb3795dfad530a24082207e809
prerequisite-patch-id: 8a22ab90cc4eca9de080d937fd6cca3d64fd496f
prerequisite-patch-id: e6093e9b2114e2110d9f0cd8f151f3d1b86dc5f9
prerequisite-patch-id: 37c2910b46900fd9994cc020a47b8553eda9ee95
prerequisite-patch-id: b82525cd1e380620df130eaa873229c4325244cc
prerequisite-patch-id: df68bda5d68decc0c69c1e73a3c780b2ce5303d1
prerequisite-patch-id: 479148bf3183b9b2714f91c94a4261bb30bf0027
prerequisite-patch-id: 2b97872af317bf1b8b4038fe27be86b92932fdb3
prerequisite-patch-id: f5184ebb6090a5836ad5f629dbc41d314f7252c4
prerequisite-patch-id: 40494256f253812de1b1ea21061e4ec1d83f2075
prerequisite-patch-id: d2f82493c32fc9eb1c8519e1ab5958050092e695
prerequisite-patch-id: a0f706bac5e9dedb3ff5f3c6368a38858892417d
prerequisite-patch-id: 75e75e5df7d213a8c7d5adcbcabf254ecb839e5f
prerequisite-patch-id: 84db2c2944bff1681d08122befc0d0154c73065d
prerequisite-patch-id: 84d3ae1978192c589b2a8868d28fd7d2b95727e4
prerequisite-patch-id: 26b9ea0e97b40c8dc214e591afcd5e211c22e111
prerequisite-patch-id: 9d3555e4eaed293de345efa4f227253d993cf0d1
prerequisite-patch-id: 10d0554f1056c1223de8d4bb55c2c4527541c57b
prerequisite-patch-id: fe47984f6c1d67eec33ec3c998830a605a0e609c
prerequisite-patch-id: f12551309fb9c84b741e91a52ab69b46cce184bd
prerequisite-patch-id: cb832ba70a8249e35506fa83b838b9f3e4735744
prerequisite-patch-id: d15341acf25d6ac8786e7c3739672a5018f73ec3
prerequisite-patch-id: 8aa3fd4eb346f14568b67bcf7926923e15b5f2ca
prerequisite-patch-id: 07dd80258148be5baec4c86069eda2e1be3bf1c0
prerequisite-patch-id: 3249f5ae59083eb86186b2f9abc3a3c020f0fe34
prerequisite-patch-id: ca1a91f2cf51c4a5f379f24afd5038ba218bdfc9
prerequisite-patch-id: 08dcadd28ac803a71f97e1ff32e212b9b2c9d7d2
prerequisite-patch-id: d7720277607dd4140dd36f50611eed9d1489111f
prerequisite-patch-id: 8962f846686f01b2b681a3aacb114f4fdaffe667
prerequisite-patch-id: 7186855d9e26699db982a01c33a9ead14f9651c4
prerequisite-patch-id: d324a8e3e611b7be5837cfb01c27625e657804c6
prerequisite-patch-id: 07915cacde3d7f9c09d93e85acdd9f966d5980ea
prerequisite-patch-id: 8d8ec7e8f42d961d3aa5ed38acbe371f7109b717
prerequisite-patch-id: 09181836147b4227cbccaf2d9c8f344edc2b6724
prerequisite-patch-id: e5402717d9e1d8b4ce43c29362ff669931e37488
prerequisite-patch-id: 779af82fdc873c08ea4afb6698a0be4272d23b27
prerequisite-patch-id: 10559412f8d10d3891b49c6e34fa08e628399c7e
prerequisite-patch-id: 89a145b1f9beecc6f2e08dabe7e012e213605e68
prerequisite-patch-id: 2e9fdff630a24cfd2d9a2d71a6db052f23c646aa
prerequisite-patch-id: 0a2d3d5e3212c823a4e7ae3665789f624eb06072
prerequisite-patch-id: 2d9969d3d6147ef5e001613a3fb8263e25a41973
prerequisite-patch-id: aa794d834ecd79f3c433a5519931b652638e7002
prerequisite-patch-id: c43dce81cb25bd7fe9130bbd7ff977459f28ce65
prerequisite-patch-id: 2577ff16ea7485bd3f0801bd80d2d13ae092c6df
prerequisite-patch-id: 27a4ead7051231e862a55e5112f80ba441fbed7e
prerequisite-patch-id: 4487757e6a1aee59276125797aad69b70eeae48f
prerequisite-patch-id: 36662c023bdd4b37a55ffa6d89c6822e962255b4
prerequisite-patch-id: 9966d52de9ca5254fc17e4d3c10ee7b34857c84d
prerequisite-patch-id: 3594d2fb326788262e582a2cc5120087f30ad43c
prerequisite-patch-id: 1c77e787e0bf735b47a90f40808e4c902a4bdf13
prerequisite-patch-id: 99a45fb55c915f4ff4b108b5a4cb12ca6a9e51c6
prerequisite-patch-id: cb7f0d3c3a6aa0ce173ff1cc8b9c30dc4661ae76
prerequisite-patch-id: 063195d96655a02b57e3a40338b48dfea28ba9be
prerequisite-patch-id: 4c3bd1c403c7b262ef00e31e667878f1bb692600
prerequisite-patch-id: 2a327efca9b92639f50ab8866ca868a981f91c5c
prerequisite-patch-id: 8523cdc103b6d5c4ca8be6f838d27ae81385abe3
prerequisite-patch-id: e4b60bca2e230a2010821d80db00c4e3f13c51cc
prerequisite-patch-id: c4e8ed8f69b6f7eb0e574dc3c0052ccfbd195172
prerequisite-patch-id: e8d71a6111e50d1a6ba2bbf5a0c44f0ae11c13b9
prerequisite-patch-id: 775a2e38bdc2a4773c335dda935c9c8d22d03673
prerequisite-patch-id: 08a4f2fa362612877dad826a23c08361cb30146b
prerequisite-patch-id: 9ea50342c2be2a461340a27579bbe97b0886877e
prerequisite-patch-id: 4e3b5dcc3c2b604ac676252ae4b498eb496fe789
prerequisite-patch-id: 09a47039b59f5da5e018fc5f0eb774e8e9ae95a5
prerequisite-patch-id: 993727853c96467f4abcfff859b64a8026a59032
prerequisite-patch-id: 64d79abe49e57b32c0e82ac31e46687d74530d17
prerequisite-patch-id: 9b695dab2b69131f975435e77fb7425ca31bb47c
prerequisite-patch-id: 9debd88fa60febed9cd7208f86603b4c2d270520
prerequisite-patch-id: 010af32804805d4bf5a293f07b77fa38362dc2fd
prerequisite-patch-id: 83fa72d3d6944eeb04f6c75bac4dfec770e225ac
prerequisite-patch-id: 17e5cf41aee70412bc04a73d36ddd4587fefa915
prerequisite-patch-id: db052a0a6975c27d78609890daf894d41beba439
prerequisite-patch-id: 78d520b141ae97e431a2d6d71dab83bb54989aad
prerequisite-patch-id: 85a5b253ded420a7540f7bd9291231aeb02fd54a
prerequisite-patch-id: 56c7de0b53641326db241d277dc285fc83791743
prerequisite-patch-id: 7a2ac63ffe565b51c990e754045176457d732836
prerequisite-patch-id: 51181043dd8d19449060594797d26c678516086a
prerequisite-patch-id: 650e58b770322ef80ba50a37fe1bf8164a934d32
prerequisite-patch-id: 54eadf94b4346df15b01d756e0ea1ef98ac3cb75
prerequisite-patch-id: ae4e89b6058e9e10cf3d4234a5b2582ff27c88d7
prerequisite-patch-id: d76f2aafb806da7c4a5a2bcf2b052775254c1255
prerequisite-patch-id: 09ceb754ee1647b20ef796ea4effc79addc3436f
prerequisite-patch-id: f85f453c5eb9a44618b5f5d9486eca7705764550
prerequisite-patch-id: 14301f9bfb2089e54f0abb42c8558ee8c4971987
prerequisite-patch-id: 62912a20061ce47e43423277e36d9f93f60aab2a
prerequisite-patch-id: 1481733b3cb6122b7621153e0346a19f0924c03f
prerequisite-patch-id: 02ea6cc23caef7eec67b398b9fab6068d3165596
prerequisite-patch-id: e034a86a1cef16999e8f7fa0894bf6fe7661d624
prerequisite-patch-id: 42b3b4ed30b0036572b619b6b5cbc9f7d61e364e
prerequisite-patch-id: c475769f2d471e4a58d2cac019633c5f631f7ab4
prerequisite-patch-id: 69bf211779a7338032311a2671aeec39d6df4342
prerequisite-patch-id: 98bf97307d0f4adb96a1f3699e44a42cdc447c9d
prerequisite-patch-id: ff3e6add7e76ddaebdfc8e278f0322071e075a41
prerequisite-patch-id: 2a704e6fffd75868374714fa9f111694854f5e0e
prerequisite-patch-id: 5be718102828bd6c0416fc9f731597dac71e7bcd
prerequisite-patch-id: e4cd1913781c8555c3c1c96317f9124b27da8433
prerequisite-patch-id: d353129205e9e9cb7d4e3b2451f8b2a7fff443ba
prerequisite-patch-id: e336f13f2efd6561defaf0bd3feb785887c31850
prerequisite-patch-id: 06bc22649b4c593a6aca7b9acc074f24b0539634
prerequisite-patch-id: bfe13da68a7d488e73d7a566335213ff108ea261
prerequisite-patch-id: 7f04fd4e058546fbb1dc5793ca43c2aec5991af5
prerequisite-patch-id: 70337cf15af5685456c2d6e57390261c4c6fba0d
prerequisite-patch-id: 89c745549c427ec8ab484c9553842b9675424c94
prerequisite-patch-id: d10f16d3f4818bbb446e555fe0247fd30233fda2
prerequisite-patch-id: ba958da722123528582952a53d5a96e5e7917ca7
prerequisite-patch-id: 3e74d6d6907ef9b212667980a524a00711a9f88f
prerequisite-patch-id: bfbedc42979f8c4545c10e276b36decd04af91c8
prerequisite-patch-id: 3ea6c429bf6b034fcf0e8eac7cbc22234456c9d2
prerequisite-patch-id: a3a2346cc73ef3416895a2f1dae84546bea034a7
prerequisite-patch-id: 21555a0d742a0cc9523558550a4c016e67dafcc8
prerequisite-patch-id: 8b40798b2b6e2751978e4b6a6498ff9303f57148
prerequisite-patch-id: f80381daa7971baecee6824c1487bad7d1bd1e85
prerequisite-patch-id: b82aa8087c801e65887b7244bd17135ddcf35f13
prerequisite-patch-id: f3a6effcdf4e83e7f2e910c4eb17fe0dc7d1fadf
prerequisite-patch-id: 35c79819fc7889d42ebbe3d363e7ccb24d9f27bf
prerequisite-patch-id: 7f3cb0d9e514b3cba7f8424c1a225f1128b6d4b3
prerequisite-patch-id: 5d744b74175c4aaea2a34a4903545bbf1fbf255c
prerequisite-patch-id: d429880ae8cb2e82585b87c90c88a79f152625a6
prerequisite-patch-id: 5b31074497a902774e94e74db57d1926c11860b0
prerequisite-patch-id: a96bcb2b360a7154aa5ce1072c6f672b350dcd93
prerequisite-patch-id: f7f9492014df1dabc3e1ebf6e72a0131758c6c22
prerequisite-patch-id: 4aea8cf84ca5e1a177656b49d7193aad8ae7e1ce
prerequisite-patch-id: 617ee0305073903487ba3efab0fffbeb6da44cf1
prerequisite-patch-id: 457104735024ee66819c42b005cf68765c02e769
prerequisite-patch-id: 4fa8cf2061d600d525420c1cf18dd6da0de2b62f
prerequisite-patch-id: df55dbc48887756fd8552e6290e7198871288484
prerequisite-patch-id: bbe2c10ef7e3ba03aef2c79acdceaacde3a74c8f
prerequisite-patch-id: c567100fbc98e011e33faaabc5457fc29b2e9858
prerequisite-patch-id: c7953491d2b89a9a1054204cdc56f300ead50847
prerequisite-patch-id: 388b0bb6124e7541bb2dce341a16fdf53e75e412
prerequisite-patch-id: 91f9ca26c10f1a7441c17d28f90877ef89b4b98f
prerequisite-patch-id: 142f34e823a2e1f9b46bc8e677fc6bd2a21807aa
prerequisite-patch-id: 2199b22afb6e20ed6926f0bea51852cb2cb0812b
prerequisite-patch-id: 71b22df84ed1feb52c97b01ce28d7d7f375c71e5
prerequisite-patch-id: a7b454834bfd8e20265cf8251912b5e74bcf902d
prerequisite-patch-id: 2aab2fb54c53da92eb88cee8f326c0418dfc985c
prerequisite-patch-id: e1d9821e9b54f1f63fc81cb0ea0c6a59511f6306
prerequisite-patch-id: d56cfbbfec64584792a354e87458f9d3335fdf08
prerequisite-patch-id: 020c60e4b221ce63223965541280bb3616f3ae34
prerequisite-patch-id: ec96b7ed0723a28e6919edfe7833ad3c60afcb9f
prerequisite-patch-id: c030aed52ff15c248fee03b77cf6d7f089c6e468
prerequisite-patch-id: e7c4297fceb13301d1b35e06c0dbc4b0144d6315
prerequisite-patch-id: 60c8b6ede7404c8d763d9411a51110d6d881c6ca
prerequisite-patch-id: 52aa2aa3bc050e0c4d566e3d5da94c1b049bc411
prerequisite-patch-id: 00bf0221745ea8ddaa2dcc6f0b823a2235f182f9
prerequisite-patch-id: 58620d3dc6388a2907638709ca194e0394f7cafd
prerequisite-patch-id: 448f1db025f2feea473a086175f9899b3318875d
prerequisite-patch-id: 514a99b1859974b4975da2538f2c0b4ac462cf9b
prerequisite-patch-id: f5465b8d97817f4500324c3e1396a73b119c5779
prerequisite-patch-id: f6eec5a6dc1b54a5abfa5d9f96d559be792e7d5b
prerequisite-patch-id: 041f2d166f614c4dc74d2e1e80fbb229e4005ca1
prerequisite-patch-id: 2a9c655fe51e2232091ea632f2b29247123bc1e9
prerequisite-patch-id: 6cf7b8f742be252f25bec8634a7b47f4e6cb4ff8
prerequisite-patch-id: 90709d48bb7b8fc03aaad370a52046ff08f92bf2
prerequisite-patch-id: 69fff446731f4bbcbfab471746222ba7f5061aa6
prerequisite-patch-id: 75602616fef3792d19c83e1941c34a6b63cab771
prerequisite-patch-id: 11159d8826ce4137ee245444e06ee0f2c8737436
prerequisite-patch-id: 31fbd3e4baab9a06f56256609d266891ef17f441
prerequisite-patch-id: c94d703342ab1e5eee90a828405d215fee70d4d7
prerequisite-patch-id: f8ecd3d4cd4acb95ca3808669c0164a54c2ca9e7
prerequisite-patch-id: e13528b76be4df4226cfc1be722607246cf0d149
prerequisite-patch-id: 4135d5efcbb267cdc69392b2125dc561cc91aa31
prerequisite-patch-id: 66922478f4592f7c97fb4f9814423d6920fd1873
prerequisite-patch-id: bb75bceea1086ce63912baf959cd010cdd451208
prerequisite-patch-id: 0bd0bf7e94c78811a3371910650acf3a62b7de2c
prerequisite-patch-id: c9e4a13c1a884d932ee29507ecf0b912a2f07068
prerequisite-patch-id: b2c1c328af3b4d7e25505177390767a8a4188e12
prerequisite-patch-id: bf4f7a15d1e750bd262dd51d14c179866f2ee410
prerequisite-patch-id: 9539f7ee089b46e6cb80b58365cadfee4855d69c
prerequisite-patch-id: 36189dfd38543aba7e2fae86c1a63e7bb30d6696
prerequisite-patch-id: 9416b5c5bd7dd921b39fba11482e79249fc9a5a1
prerequisite-patch-id: 8a4f889c035c8889927cd9d2c230dec0ae09df70
prerequisite-patch-id: 6e0d5720b540cac23a2213c81ce72cfa98daae76
prerequisite-patch-id: 5079c4d6ccdd2a6d28c0215f62109f9e86ca7340
prerequisite-patch-id: 9dc2747cf6b94c4e107d561097d65e908f7b3a50
prerequisite-patch-id: 05bad28b7cf3e0498103d2b6eee5c76928c267be
prerequisite-patch-id: 7ccad8d2fc6ea0799458487a323572998bf85775
prerequisite-patch-id: 293f41c4bff1e11d3e38716de3a7400f617d9e06
prerequisite-patch-id: 9f150fe3ec2f407519c7c920779c850b44fa4f93
prerequisite-patch-id: 5aab185816466f35a230e1b608b846dda7752aa8
prerequisite-patch-id: d64b50fda12b4d451c94f9b0f5f824181621d7db
prerequisite-patch-id: ffdf20716ffa3da6a259ccc12f4f5700a3cfb051
prerequisite-patch-id: 6f9f51a2edc8916ab7c7abbdc9e4d535438f7c49
prerequisite-patch-id: cfde4234f5f3e3a6350397dce41926ab153a5c21
prerequisite-patch-id: 72df136d12fee2d5e798b8c59e545dfa63c563a3
prerequisite-patch-id: 86d65344db7f81aa0dea8ec635ee48244b44e1eb
prerequisite-patch-id: 64b1c85f613b35908f17f476f5a2e82de2ab2d86
prerequisite-patch-id: d4b5416e98bb89d6b92117a25bf8eb7adc3e8373
prerequisite-patch-id: 40b8aba9eb4b104b8d29ed6b215f767058206c89
prerequisite-patch-id: 09588209843e0c334cd72dbd22025045811ff6ab
prerequisite-patch-id: 76522b4c1319c1272c3c56c1df70a3296b5b7aae
prerequisite-patch-id: 45f3bb83de000873fd121445cc58f210ff439d33
prerequisite-patch-id: d2240c80c0f28cad1d229f1293fee479365ef136
prerequisite-patch-id: 52bd08b29331b1ac1d7bf38db8abcc5c62e4bda5
prerequisite-patch-id: b580371074dda198f47598428527bff0c578ed29
prerequisite-patch-id: 3d104e6d35884e6cdb8837c59d649334adf060b0
prerequisite-patch-id: d536f50f1f55e5406b20f0a85106dc66d5781cfc
prerequisite-patch-id: 7cb3df1324a32f823c1723a78ba9b8e8cddd65e6
prerequisite-patch-id: ad0e4d695fc1edeb4745c9154f41c837f5042e76
prerequisite-patch-id: 3a65a9f0b5e48bbbeac4187d3238573170778046
prerequisite-patch-id: 3c45a6beac5aa1950714d68bc1841e436a06aaf3
prerequisite-patch-id: 5d69e4bea8ea57242679dabc24344cae0f4723ea
prerequisite-patch-id: 79c167dfed6ba37e5e95f5c9ff8fb4e529753597
prerequisite-patch-id: 5f5ae39855835aad1375ff0753f6e0264d8e6707
prerequisite-patch-id: 6c2cb149e87a4ee8709669a1ce53122f932d444d
prerequisite-patch-id: 14b04364dbaeb0c6238f0a1967d5fba21501dc39
prerequisite-patch-id: 3053e59b8e15bf9e4f5607c8cd6bcdd42f7972f8
prerequisite-patch-id: 939ba55f453cda06a539a82ac2452c0b093b7b79
prerequisite-patch-id: 0d19a288b7e70ed32470f8e929377a2f3e2e1b5c
prerequisite-patch-id: 8da161e771045fb8987b58ef333459df5dbad8d8
prerequisite-patch-id: 1dd4d060e76316c06db20322c3244c66a18aa197
prerequisite-patch-id: 4f22dea6ceee1f44ad36bfaaca77897891cad405
prerequisite-patch-id: 057305779382d3169720fa44ae4dc736183fbda5
prerequisite-patch-id: 64d9db0bc9e64c5ec75fb1991858ed39fbe9eaec
prerequisite-patch-id: 6bdf3ff553a8a787f6aa919a245335f521e5e988
prerequisite-patch-id: 44b67858838e054d1a4447c2f28194bdf0b3acf8
prerequisite-patch-id: 128ca5408b9b1e0731da3934ac18d4425b27bbe7
prerequisite-patch-id: b24a07bf2b7bdedb1d0d102d8cbc0c2a3cff50b9
prerequisite-patch-id: 7d8f265326ec02816a21c58e0e8cb04de20a2b2c
prerequisite-patch-id: f347f0cc2376fd17032c76b87e6d25be79fbf5c4
prerequisite-patch-id: 2d90a42a6b96befd4c5c8f147ebf04178965ea89
prerequisite-patch-id: 8436f39fab22b40e4d9e2a341e59d57ac1f36bd6
prerequisite-patch-id: d8ca4d7f2d85071760bbbeec2dc204ea75c10294
prerequisite-patch-id: 88ea29fc0fe8eff799ab8c705c1930e1f7a7a781
prerequisite-patch-id: dc474873c2f92e8efdd099b6ee289bdbf33a8887
prerequisite-patch-id: b3ae2d40d734d38af6a2693aa287775ed18baebf
prerequisite-patch-id: ef2781702422811076a78678f30bb3958dd50866
prerequisite-patch-id: 378b8b004ef44d3062990291ef8280b838211b1b
prerequisite-patch-id: 35582493ef01498c300b533ce995d470e0af0217
prerequisite-patch-id: c82b75e4526cd7be9359d715ab5632d3f825349a
prerequisite-patch-id: 041f53d5c821dee9e2a7ab91661c05c9e07ae2e0
prerequisite-patch-id: 7d8172b2884d76314400badfc4441632dce58326
prerequisite-patch-id: 85a24fb9b0daa1701911431c70671c4db4e27da8
prerequisite-patch-id: 0e16072f68f6c690040d6ff0c3dee760ddec77d4
prerequisite-patch-id: 0430a6c8f42775a9fc048a0d183db69fdaf2946f
prerequisite-patch-id: 5a73f3db035eeb15ede3991ee9c9f77a5ca82e65
prerequisite-patch-id: 6ff9642c00feaf2babc848475e6949704579a609
prerequisite-patch-id: 98cdbab97ca64c67d5bd0d5a1195f7b3d35ca4b3
prerequisite-patch-id: faeb7706963077719d798945414bb04ed8f20008
prerequisite-patch-id: 93eb087e363f97927bf097350cda8344beb69d87
prerequisite-patch-id: 6be2f24de923a35155295e3d889431c71b85f0a9
prerequisite-patch-id: 80ee561da9386ccdd2e3f62beb7ccc1850e5f2cb
prerequisite-patch-id: 1f39b54b3314ccb05caaf16b3bcdb0d04dcdee2d
prerequisite-patch-id: c3172375177164b69fe93ccdac8aee7eb5fdcada
prerequisite-patch-id: 4d6c03811d6fdf1d4c377a23276459b55aeb4264
prerequisite-patch-id: 685985426027e7854f319e8be6f86ed1ac40bf13
prerequisite-patch-id: 8b361a784731a9621655e16132885fe72d70e861
prerequisite-patch-id: ff0c3d92ea8bcd5d91296d5165fe1950ba4845c0
prerequisite-patch-id: c1f90dfe01371b96269f46e159a85df0e4b6c2cd
prerequisite-patch-id: 8211c94486930699ced38a1aa44991c901efe29b
prerequisite-patch-id: 8595b4629d304d9bc43d4565f9a4afa52745bbd7
prerequisite-patch-id: e9e14613a17e90cff738a843d53c52d018b8ba31
prerequisite-patch-id: c7d065c39828fb5c819a206b49670cb998006494
prerequisite-patch-id: 2e394163b6ff8de0ec5373abc2144532105f3073
prerequisite-patch-id: 6dc572e8481159425e27f5e71f0848bc89ee2ed8
prerequisite-patch-id: 8753f9e69b4594c04043c051976ee7f664ed2533
prerequisite-patch-id: a576c161e229292336309fb2c12bd6a7b6e6582c
prerequisite-patch-id: 3e01f21206a842dc8105ab371537f585d7cf1830
prerequisite-patch-id: ebf80cd5137da0341d9306e4522c1c3f31bbbae4
prerequisite-patch-id: 49bf4d41ab1f960be6ce4ec16c569e79aa400b26
prerequisite-patch-id: fc7b58f821f1c893423037dac81b88856fafeb95
prerequisite-patch-id: 3ea5435f9882182742dd09ced24a7e2e82883395
prerequisite-patch-id: d355ae9dbb8b95a3ef5fff247d105b3f61d4a8c0
prerequisite-patch-id: d6b5c787d71016581b87c74e441c239a1c3978d1
prerequisite-patch-id: d2b97f535dca28f37edf3ede8b6b40bcd8ee54a5
prerequisite-patch-id: 2f1f9a7d1acbe863b5766726698a126e370c5030
prerequisite-patch-id: be11abf8018a78475b1819de343201a2258c075b
prerequisite-patch-id: ca8a7aef06ab5bc8b93b3ba38dd43428ba7ed869
prerequisite-patch-id: 0098f0d909dab77ecf71d2813ad7ea108b75d534
prerequisite-patch-id: 48abc363caaa84a460ffce24364c07529433f596
prerequisite-patch-id: 3435afd0f7679a0f17064ae927804f9fa16b7b79
prerequisite-patch-id: a9b3a4d6bf770074150b663f20929973d9e0cbfc
prerequisite-patch-id: c9919ecd512857bce899914706ebd80cad6a264c
prerequisite-patch-id: ac6c18c0e290aa4af174ae1d7c6343564c436432
prerequisite-patch-id: 81c70fbb61ef5dcba0b446ef16f517aa98cb8e50
prerequisite-patch-id: e10462c5ddfbf9e8e0bff5ecc3c8ecc78de50618
prerequisite-patch-id: 8106c0af9239db26def1c1598df09894923aa74a
prerequisite-patch-id: c66322ce029e233376067b27f338a5918265b122
prerequisite-patch-id: 4df8ae70ed31c6ce8a77b434f28434d6a48ff044
prerequisite-patch-id: accd553ff9b54a5b54a8c58846ac3918b9ad3cac
prerequisite-patch-id: 3731f0094fe64d5af89a74ed93d71bae02237b45
prerequisite-patch-id: f30718cfefdd8eb0b9bbbbc3f1d84c9711bc829b
prerequisite-patch-id: 56b8eb7ac0827f34fa7cdc17fa9d5d47fd38f288
prerequisite-patch-id: 073ccb92fbcce65563d9a1b12fe13de47ee7feb3
prerequisite-patch-id: db7dac4fb1596b979cce09e70356eba64ff85236
prerequisite-patch-id: 00498182da1b377b58627e7669620351ba82f657
prerequisite-patch-id: 2408591ad8ac1f92e23208af034240729c48dd7f
prerequisite-patch-id: d6ebea8a67fcf04cfe2b05a8ca197bb0817f8075
prerequisite-patch-id: 3d74e90911fc27e80e9c375c0d7fa2a8c2675233
prerequisite-patch-id: f5a70e41fe9df7df0ab29538701bdfdb401a9d01
prerequisite-patch-id: b46a91afc38bea2ee6a8440f59e71e39728df6ad
prerequisite-patch-id: e52fec6dfa857fa0ba03b85ef01f93c3e13ddea2
prerequisite-patch-id: baba7707bd63d9142ac9d2e79f07dbcf15886d95
prerequisite-patch-id: ca4c29091371143ce898ee9bfc72dfa593a6a544
prerequisite-patch-id: 73f73d977336184792500f76615ea1d7532137d5
prerequisite-patch-id: a3a1148a82e6bedf7e1e7c31a8f0fc37a3d20f39
prerequisite-patch-id: ac87b330f7e855089cff0a4906e2d0353c4389bb
prerequisite-patch-id: 8e21b40031a3cf7518d565e1c80e50f918cdf8d7
prerequisite-patch-id: ff9d2d5c85b7cda7483431e080b676033d734482
prerequisite-patch-id: 4123ae9fe402a4e4b50e406fcfb0cf6a5b22f4ef
prerequisite-patch-id: 6ae7c573cc48a95771fbc638cc1f78b41707f02d
prerequisite-patch-id: 56747fbd6247d8870c9366185821c83c1f0a46ff
prerequisite-patch-id: f0a5406f732e01d2d20b3caed56420337157d2c2
prerequisite-patch-id: e48c9f8b786c1a2642a7de3d1285876f1917c9bb
prerequisite-patch-id: dd598e0a736f978ea3acf7ae83e97d50ab5b86e9
prerequisite-patch-id: 7d81660c554982a5f0624f985e7eefb3e4af5e14
prerequisite-patch-id: 7fcbc5d41cc07318c4f066488dd53536fcbd5bc2
prerequisite-patch-id: b848892dd4867da997b8d1323108862272f01fd3
prerequisite-patch-id: b111e67adf55df9aa1474c7f9df71a1fb515a34c
prerequisite-patch-id: 2c46edf2573346c30d9f0afa521a036fe24d4aef
prerequisite-patch-id: 8c05f2e684fb013d4a639024ed48f34b3e3e23a2
prerequisite-patch-id: 0f82dc6db82be06160a12ec2e0ef49779d52b1dc
prerequisite-patch-id: e0f5400915a551a1f3428b8ace067e476471b9df
prerequisite-patch-id: b818282d24ee256b60ca7545907f60fb8f524b98
prerequisite-patch-id: 496b02715aaa623082eba82a1b8e62c056709bda
prerequisite-patch-id: b1f3431a8f2589bafc755e25a5f6f66c277c0a2d
prerequisite-patch-id: 544aac8fdb10be712c30b4a6dcbcb18dc6a70f18
prerequisite-patch-id: 1949e8a8cdbce2cf0b1036cf9350b0794da7b743
prerequisite-patch-id: b4e5a61d8594e3d36b3596f680bb86c7e288d44a
prerequisite-patch-id: 8ddaaab21dc161bc966fc55db1900b583dc734f2
prerequisite-patch-id: 7aafeae879bd1917c4bffef19cc02f9bb4608a3b
prerequisite-patch-id: 163c486cfd804cb286506347575ba8bee6686527
prerequisite-patch-id: 46a802081f882371e868b7fef16204f71e2840dc
prerequisite-patch-id: e1a97ad36e1997f353175969ed48135846935183
prerequisite-patch-id: c1f2d14da4246a5d4ea22cfe6bbafd81bef5450f
prerequisite-patch-id: 706d1806c04e4363f5eadf398d45eb1159edc421
prerequisite-patch-id: eb0fe83fdc8f5b3334005be1ae5c93daefd5447e
prerequisite-patch-id: b30bbd153bd078f5b3f60dc3b47ad45f9835530e
prerequisite-patch-id: 96c3d7a20a7f9ce0ede19860c4900094b6433d3b
prerequisite-patch-id: 331d69af47f3941dfd492ffc33d2bb644e4105bc
prerequisite-patch-id: 135523877d9ede3a00000f720775d4268abc6686
prerequisite-patch-id: 1ec69f1bb1a679aa7f0e8cac4b71045599635bda
prerequisite-patch-id: aa722b67fdd4972b71553aef682c3ae1d4396bb4
prerequisite-patch-id: 8a53aee9da8b370032318e70bcf5a831eb51b2da
prerequisite-patch-id: 76abdf5bc3f3dc065849b746759f7ca02ef87682
prerequisite-patch-id: c62bdb65e9de0a3e66ac8c69897763f0ff9536bc
prerequisite-patch-id: 7fb098ce412c5a03507b78082a6bd5c9917c282b
prerequisite-patch-id: 85e434b871450870193bc5c4f843dc0e03869114
prerequisite-patch-id: d9058a2e13e32b2d485e8f33ced521b77cb3eb17
prerequisite-patch-id: f6c8cc2ffca91fee9f093a9807ba1c75d97ee878
prerequisite-patch-id: 20511610983e0cc3d2ad64e00fcb1d03d6282ab9
prerequisite-patch-id: e6c049b8d9c3aa53a722c07251f6b2f01528d7a8
prerequisite-patch-id: bc7ecb2066febbc2059d354193704db5ac9ea0fd
prerequisite-patch-id: eacaadbef89d75fe7ce5a08d2af4cbb8fe27ac98
prerequisite-patch-id: dfc647d6726535d9df80c6e5c3603b595c1b2476
prerequisite-patch-id: 2439108dc0263d079dd4638a68415b35742b203a
prerequisite-patch-id: b164683a0d615529fdd283cbe7fc8275f3de8691
prerequisite-patch-id: a6d7d00969726f668ba710e9257a735a79a9bdbc
prerequisite-patch-id: a8a1a63ee4d262debbe66611fae736b58fb990a8
prerequisite-patch-id: 9c02c7e6f7f4c7f0df0e5d5b9850a2c46414a47d
prerequisite-patch-id: fad57842224acf1c7f4140de40b493fbcd5a0fa4
prerequisite-patch-id: e961c38fde95c6e7938fa2ac31c5e12f28a31b53
prerequisite-patch-id: acca46abacc7d506debf4ecf50fc482df7769c62
prerequisite-patch-id: 49bbe546bb89a68dc98b0e0916b712a8b5716d46
prerequisite-patch-id: 8a8b1cba9d0a49e7822351c51bd1bef7bb14de46
prerequisite-patch-id: 9f6104bf5b3d9393c5ec487c5ca175a62ad1bda8
prerequisite-patch-id: ac81174ef8708a83525b94f63e12348f28e1ca11
prerequisite-patch-id: 4ea54383028a7ce357f5c0767d6ea8804fb0e178
prerequisite-patch-id: be99756134e65ceff3d239ebe2abce2061ac2ab8
prerequisite-patch-id: d572f16c0745875dfeaef2944f975be5eeb77af4
prerequisite-patch-id: ba8888c27abdb68a8c9e291d489d3a1bc5f121f7
prerequisite-patch-id: bcd9e189f07376059bae3e7ee9d6cd89537e779d
prerequisite-patch-id: 6eb978034cd66017cd4091cc2329f79bc17a57d8
prerequisite-patch-id: 156115e6867fd42b23399ea7b313c062b997adb5
prerequisite-patch-id: 4835097ea5be537a6e969af4b14be320a6753f54
prerequisite-patch-id: c71b5e517be5620a4980a38a81f115d79d1cf79f
prerequisite-patch-id: 7128baffd3af1a881ba0b53dadd88250cb978d6f
prerequisite-patch-id: d911fd5d2abac81f3b34b42bfae32cd22a692e6b
prerequisite-patch-id: 91dd4c8437ad3490438f93d1104923eb56f531a7
prerequisite-patch-id: 579b591a7ae8a7df5db3f8f67b4932b82ad2ea3a
prerequisite-patch-id: d3a7917a82e80d616b9c1fcc1254ae4261da6725
prerequisite-patch-id: 360fd1751f682ab09b5eb5b233979ba01dc256a6
prerequisite-patch-id: 9bc94c6280a57d098308d6b9af12c4ca821d5b20
prerequisite-patch-id: 354c456078996f592e3bb2d703c2ec41ae6b30a4
prerequisite-patch-id: 2559e5107aad1d03cc2591eedb9d83a4522e3795
prerequisite-patch-id: 47798034e8a750a5c13751087ec4759de06d1f45
prerequisite-patch-id: eb7c284a3991610b0f62490e93202cf22009a7ae
prerequisite-patch-id: 99999769a983549a81a1b7825b92661dc10e14d2
prerequisite-patch-id: 7b8bccfe6a70d4acd436a2ad97ce959b4d6eec48
prerequisite-patch-id: b12f216323a3b621f89db62918af590da5cfaa8b
prerequisite-patch-id: b099f3e427cad21f2033543e47d9fda1ada30c0e
prerequisite-patch-id: 4d94cb4f5b700d4c2e67347aca1f3731219c0dd9
prerequisite-patch-id: a5ea092ccc67930b4620c7ebfd8abffe65fa7dd3
prerequisite-patch-id: 8186528a65546c0ef21250f8a0d851e68cd98649
prerequisite-patch-id: 009d626759dc531cc5281b7c070b2e22ba5d2809
prerequisite-patch-id: 77923e2b0bd30cfe7f7b78d164f82aefcdd98340
prerequisite-patch-id: a4a4a1a8585e44a48251cbe73966a09615e65d94
prerequisite-patch-id: 3ad3c2a73f581cf07309426d0237f0c7070b492f
prerequisite-patch-id: e1309f9bdded1abc7650c3aa555bb87cd106dff6
prerequisite-patch-id: 21e267ff7a6504bb382ce8580fb00d526f2d1080
prerequisite-patch-id: 6e1bc625ca0207796655cf1b72a595a5faf7a284
prerequisite-patch-id: 3eac8c500d004ccee280c1a571b21b4049fef006
prerequisite-patch-id: 4100f88245c1872147fee09ac726ef11143a731e
prerequisite-patch-id: ae9f5fbb63d169a4980aa39ca5ebdfa17bd08c25
prerequisite-patch-id: 18260e314165a85151113f0cf8db33a1f97ac856
prerequisite-patch-id: 7bcb802e317f0a20f155bafb30a361a0f8b4e32f
prerequisite-patch-id: b00a335c52f6b5982dbedcf4af946cb9d353fd16
prerequisite-patch-id: 82d5266fa87236d7f4997753f8f3d823b0fa1463
prerequisite-patch-id: 99266b27e91aa65f2793f1510a58917e0246227c
prerequisite-patch-id: 885472574e83b9fae6fece3656e4156443f1b9b5
prerequisite-patch-id: 8381099a68fa00e48f0fbccf21933a8c027accaf
prerequisite-patch-id: 60f98dd694601f239fdb6070281896fd2c262acc
prerequisite-patch-id: 45c59789a417ceb6f17d44d766e358ac1de108f7
prerequisite-patch-id: b68cf73294621bcf0ac9d5f3767b23fd92b80d50
prerequisite-patch-id: da1a1deda98abf192c4b471c8244d319ad653f28
prerequisite-patch-id: 34a30daae5aac1af69c07181a0df3d1cd591e5ae
prerequisite-patch-id: 6a57d5622dda7c563aabadb2ee1c431278b7905b
prerequisite-patch-id: 70da92efe3f01b17f4e48ba51afa15d77de44043
prerequisite-patch-id: 416a2a2c583c1d84afaab4e9ce744748d2e12a8f
prerequisite-patch-id: 0208c37e2486e24c7118e43be6980421f568b3d5
prerequisite-patch-id: 8fac5af2353a55f7fd1b51e1e3cbd38328d3269d
prerequisite-patch-id: 6943a73121e60d9a44f2513276a4905abc18f54a
prerequisite-patch-id: 3db50b3ed2e8c7342bf00c672c459acd80fa384f
prerequisite-patch-id: 7b3fabd4878efe00a7dc1df72a9b9dddaa34d33c
prerequisite-patch-id: c2418ed608c69805ca0f67c4eb8ba20819a42dfa
prerequisite-patch-id: 152045562962ece35d67948ba46a628df753dfdb
prerequisite-patch-id: f4530acfad5143e36872f5ea2e148737c9542aa5
prerequisite-patch-id: c20c26544fadc60301db5666c804046c8c2be133
prerequisite-patch-id: 9c591b191454cd52ab8d7759f0cb542521aaf99b
prerequisite-patch-id: 4f19d18794ce5a77b5f97b05d7ce927ab6f5cde7
prerequisite-patch-id: 74f212d34ad6d74c13496d6c42b5a6ed342dfb0f
prerequisite-patch-id: e5b4f0f9a7eab566795a2659136e31ed554bff8a
prerequisite-patch-id: f5981970003050392c86e2e95e01c6bedca50192
prerequisite-patch-id: 1fd424d070ba894ab824499800488d064b4af418
prerequisite-patch-id: 84159c6d627469ce6901b965ee959ed91f1eaf87
prerequisite-patch-id: c4d4c80dc5504f949de237b3121c0c115f842291
prerequisite-patch-id: fd801bcdc022858510ab2a9810c59d9e5396847c
prerequisite-patch-id: 85fcc18c04ba4dd144b28b866c0a5a76c6efc820
prerequisite-patch-id: 6157c6bf1edce4fef532a6f79567c69d01993339
prerequisite-patch-id: 61cd3511793fa956b9e51a8d2efb3c79238cbdb4
prerequisite-patch-id: 06ead15fde2145d6dc1936d443c397f66a1141ba
prerequisite-patch-id: 31d47c7b01d74c08e45c8693596621a95918fa4a
prerequisite-patch-id: 3b7bbca9b6a1169259d4690577405b72d4c51587
prerequisite-patch-id: 9d97354db46a1819354cea21477e5c3cb3089ffd
prerequisite-patch-id: b73c97771a4d008639d5ac6a856b5060141888d1
prerequisite-patch-id: e52174c1752728e78fd180e2d094819e09669d1c
prerequisite-patch-id: 57c3d4ec479b5d3d15b99badd95a7805f296548c
prerequisite-patch-id: ca6888b1830cd7217e9c7d11fa158a3b1c88e70a
prerequisite-patch-id: 25d5bf1e715553a9110e607fb0c2526c0dffb737
prerequisite-patch-id: 07da6e43032d87dcbb67fce2cc7a2c86d5a89fb9
prerequisite-patch-id: e3a89995b1b36188c2c4bf0fc405f15fd936864e
prerequisite-patch-id: 771fc1fc0c7003a12cb9e772c1a0dd1e360231b5
prerequisite-patch-id: 946b9348fb432a7b10084b71e6965bb33df656dc
prerequisite-patch-id: 354069b87fc70a71151f43ed76d6387f28ddb657
prerequisite-patch-id: 60b9db993ee36cac8a7adc095f05bd97549bc7f6
prerequisite-patch-id: 6cad36a8e682635c41afa15cb1b054ff8d08d278
prerequisite-patch-id: a46ca27ba6f2a6903fdc154da27e7607ff927e94
prerequisite-patch-id: 3529d46292d7eda149da4dc573a4c777c6509970
prerequisite-patch-id: 0dcb9f432280b83707a7cf4b595dc08883205162
prerequisite-patch-id: b1697b4c067afb9c7e43de86686b560aa820ae82
prerequisite-patch-id: 193911ca4ebbcf6f40db945829751d65f5304236
prerequisite-patch-id: 514d66624ebf40b2159598f038dc6a4fa74d64db
prerequisite-patch-id: 6d3c1a996a1e252ae51cb37f507598779d6e618c
prerequisite-patch-id: 93789378b5612e8819e5ec14647273123d93f697
prerequisite-patch-id: 3313ffa897e78b415ab5d89be59aacd7ca9f9d4d
prerequisite-patch-id: 40cd34e6d9d6110436ccee72c2f955722700f091
prerequisite-patch-id: 6075485ed4981e967017f9c1b17d9801b62f2830
prerequisite-patch-id: adf774d1e82f251609f22361fcd79e523107f77b
prerequisite-patch-id: 30b81c0864aab706c0d2cf33d8b56e7fd9df2e02
prerequisite-patch-id: 33cc7bf571205000a13cb02c92baeb37f57d794f
prerequisite-patch-id: 371e2fa8011d464fa39941d5c5b68963986a95b4
prerequisite-patch-id: 53e315c62cdad768c3e5d38cc1a28463f7a2d2ea
prerequisite-patch-id: 1507dae3be340155646d80b69c67dc67660df999
prerequisite-patch-id: 3dd769a1c2b4efb597f206af013e9600ca00c177
prerequisite-patch-id: 5d998ee511cf794c490b183a17bdb6e81da0efff
prerequisite-patch-id: f17867e161745b61beff18c6e702e5ef70e5dad5
prerequisite-patch-id: b78e4c2d8854e957670698de2a3325b8a5f64200
prerequisite-patch-id: badecac6c7d8e3441677c7d447891374d10fc635
prerequisite-patch-id: fda336c54dff0554d246515b886c98ef803cfd35
prerequisite-patch-id: b5f709fc11efc11fc2df0731ff2cd3fcf9d1c288
prerequisite-patch-id: 81e85c6077254095978412a644a5b1919a4c48ad
prerequisite-patch-id: 4a8f8d8fa53f68d1647e88eb137b61766896d140
prerequisite-patch-id: 9d8c861c4e53ca5273ee01af4917ec5377db2e0e
prerequisite-patch-id: f0b4cdc975353a0ba49f5c64b598da4aadc42a8b
prerequisite-patch-id: 044116ca14a83a29fedcd2e7de23ff360b6ea7f8
prerequisite-patch-id: 5320f6122131df5dbad5cb8465e616c0392dc3b3
prerequisite-patch-id: 85ae3ede2c6612912f855b6dab492b13a871fd6d
prerequisite-patch-id: 9b35907cce8b3bf7c663865cce8138221779aec8
prerequisite-patch-id: 1c13efcf98a8879f50626df57c9cc7834465d18b
prerequisite-patch-id: af1b1b707412eb659eeb1e8aef0e850960189d30
prerequisite-patch-id: 3b5829917d48c625e929b4a575ac609b9d47f05b
prerequisite-patch-id: fbcd1aa9a0944df3563ff51073cb837490fbe077
prerequisite-patch-id: c3d155ed6bc862e82c79c3e08c6b8193cfd53a93
prerequisite-patch-id: 0bfc0acba4adebe2cbfd62d608df67598cb1bf13
prerequisite-patch-id: 671455f44a61431c8578ce08bc30bc2ca876658a
prerequisite-patch-id: 33dc2fb892c27a8014964384ec69f23d9a228c02
prerequisite-patch-id: d153e9f377f76135d4ee5973ec632d020916e014
prerequisite-patch-id: 49360eebb08c1d85675c0025786cbb9335090691
prerequisite-patch-id: 4830f654261a2398ab8e745e76c2804322fba35c
prerequisite-patch-id: 77baade8ec078e790ac3ffe11837b520216d1e76
prerequisite-patch-id: 95299150179f4924cb5b9c3215289876d6f309e6
prerequisite-patch-id: 946faac6c6a1116a25155a592adeed4cbed6ea44
prerequisite-patch-id: b05e302f6ac2d3d956e6c3b014437cf819283fc6
prerequisite-patch-id: 2b98c3fdeab375ae781f3787577d61cbab90568c
prerequisite-patch-id: 03b5383a865e1f98329ea053255e3bb251a096f9
prerequisite-patch-id: 86c5c662a08189d7e6b1bc46dc83a0a0bed035d4
prerequisite-patch-id: dab34d76aa1a8aa3468ad902758aef013ac7d08c
prerequisite-patch-id: 6c8b2c99c5ed29338dab94ae280d9c16d83015f4
prerequisite-patch-id: c9ef4ad25385c0b51f0c573ee343d4b68f87c81f
prerequisite-patch-id: 123ab02ac84f383e78b385c29f8a06e543b71686
prerequisite-patch-id: 8cdc66ce32c6f6a80528de8c7a78ee9fdfc4748a
prerequisite-patch-id: 41dc3cba79937fbfcca58eccb5f895d847ae40bc
prerequisite-patch-id: 37ad3b95e668cc955f86b12ac925b92a46123cb2
prerequisite-patch-id: fd5d80460fbe6cb5b18bf07301a01c0609f6b430
prerequisite-patch-id: f49771633b4f441bb0bb95621b8c18543827febd
prerequisite-patch-id: 68d81bc4b8f1e393bcfda27da6b6d58f9daf60c3
prerequisite-patch-id: 9f55748caaf1d683f992af7904b71bece73be111
prerequisite-patch-id: d33160889e2e75ff042535ed112610ebaeaf7082
prerequisite-patch-id: 1afc4d4085e631110e6ce1f39c026cda69068a18
prerequisite-patch-id: 1664e16bf555da471e2175b829dd41d267634ecc
prerequisite-patch-id: e576f1d5d53e41c3688503692ae15218e86ec4c6
prerequisite-patch-id: bd71affb202c86460b2a7d57f65160a0d2059af7
prerequisite-patch-id: e2307ca6b7f2dc7e49fcc0aa7e1d85953a0aa897
prerequisite-patch-id: ef495a17cb6d56e037f83af2829927d3d7fae0ca
prerequisite-patch-id: 3f42aa427f2a735e0ae237b9a699f011e6fcfffa
prerequisite-patch-id: 0985a2fa557366a775098353319b20b8ce433be2
prerequisite-patch-id: 2efbdd32dbd8666fde164d76a55b483444d58b03
prerequisite-patch-id: 625b8b33257bcb6809b460af6dcbb00e463f50da
prerequisite-patch-id: e543e6b160fad1aefd4cee4d50c8c707087ea935
prerequisite-patch-id: 26a3782789a869a2a81b83af05c28372d598c6e7
prerequisite-patch-id: 86359cc858bf40f45b523543b53fa2eeeede300d
prerequisite-patch-id: 82deb0de3172a832bd1b592b68564ea60df7807f
prerequisite-patch-id: 5f3da5add9f23a89eec56436a1d1f964c0824aae
prerequisite-patch-id: 64c9cdc2e2fcb7e3215d57faf2790bf2ef4d3e59
prerequisite-patch-id: a3bd4e99a5522744eec4bcf1979309c690528fbf
prerequisite-patch-id: 9ade8ed508281049c0200e850a7af13399bcb72d
prerequisite-patch-id: a5b8365de0a84d514a9ab3238a96a3f941f4a2bb
prerequisite-patch-id: 0714bcb4584d13a24d1f69e4e6c612bcdb0c3f8f
prerequisite-patch-id: 31ecc47f126cf1b0d6da1667cb267fc5f4ddfe52
prerequisite-patch-id: dd0b5e412fb53bde8d2006ce3ba0b85589b04d3d
prerequisite-patch-id: 962acc6c863b3887d62d7c769579005785d23ea9
prerequisite-patch-id: 893287d7e5d8e86e1e0c621cee32df175cc23e5a
prerequisite-patch-id: 437b0e7e5c4f4f353d043f8512c8a9dc93ba9fa0
prerequisite-patch-id: 34c4ee58de973e0426d919f59c362444afec3ecd
prerequisite-patch-id: 6fdaa47d5be62765fb911ae60bedf8d64980aab3
prerequisite-patch-id: d7915f06394a8a711798d33f39502ae4a291a98f
prerequisite-patch-id: 2c72d787047bbb6141bc1950c44537297f13adc8
prerequisite-patch-id: 8fedcbe69a47db0e57c7afa0ff5bdafcb483e590
prerequisite-patch-id: 9f58282f4c4c6dee51967c30fb57ebde4a3eec92
prerequisite-patch-id: 175db777f0534eb759228206b7fb897802ee795f
prerequisite-patch-id: 0d13e600c06edac6db76665f13ba8cc8b368237d
prerequisite-patch-id: 76b1b7adade2b0f93c23661087de7959a3f0d613
prerequisite-patch-id: 667063ea3f84608312bba40ab36137a13d1d3a52
prerequisite-patch-id: 8fb798feca895a925f4c0d9178543698c2003a2e
prerequisite-patch-id: 7fb5a5a5ef7033d98773bf3bee0240569b18d2d1
prerequisite-patch-id: 1df487ca98e3478ef805997495026c312c93a857
prerequisite-patch-id: cab5155a0d8747f13386f80f37fc882c442a2d20
prerequisite-patch-id: 34b12a6acd585bfc5bb126471adb7b0df866f916
prerequisite-patch-id: 244093c85eb4ee1d94fae5982349279fc38d4d48
prerequisite-patch-id: 872c2a2e03378f17b0b2b6fbc13806b9b5804b02
prerequisite-patch-id: cf866721929b3c7c51ae2ff833e222c27df2d837
prerequisite-patch-id: 7192589783dcdfd4271173eb4e1cb812b2e90437
prerequisite-patch-id: 6868a611216f69b0f0f4dd2b4103c806d01687c2
prerequisite-patch-id: 0a36817fa16d82d1d85a856917923b06d20be93f
prerequisite-patch-id: 9ccf1c1456d15743242e75057879d09bea5dea75
prerequisite-patch-id: d2ad1cee4626e1dc44cc108e43ef11e3b3ae0aa9
prerequisite-patch-id: f6e35ac079bdecc0a87ad4d39544a9a847e3c4aa
prerequisite-patch-id: a678c69f49ecfea0694cfd26498275e257d38034
prerequisite-patch-id: b309aa4d50c3e5263038323eff6b3d6951ec9323
prerequisite-patch-id: 58adc4e56ff00572f73d368864d01644847131e8
prerequisite-patch-id: 7a46199a7738e9ef6f6960453e9c526f74948cfe
prerequisite-patch-id: 9ce41bde2f2b8d2e53e44c10c9efd11b57996228
prerequisite-patch-id: 721db7b7743ff43610f1cea6455688a7cf524656
prerequisite-patch-id: a0f933fb3060206086e0fe768721d0f3a2747e58
prerequisite-patch-id: a275cb86227667c4a199a55cea62e61159f064a1
prerequisite-patch-id: e38efb0dfc41c037c0a9309a941d63544ce8880e
prerequisite-patch-id: f39630c5cf5cbd8d970ede6859e2208ac051375a
prerequisite-patch-id: 440b9f2e9eea2d36f93e6a4587f6a41fbfef1c45
prerequisite-patch-id: a956c6a8d365f25c64a84f3a529d3258f185215b
prerequisite-patch-id: f5127f30b0fa8ca9974750eb359797fd70cd94de
prerequisite-patch-id: fc3d4e89530b6d259f97bb0ea15f686eb95beb8d
prerequisite-patch-id: 9474b4002b1e79d9050046468ac828748cd0b45a
prerequisite-patch-id: bf34797a12a810cde49c846f146fb2c4af0e9a67
prerequisite-patch-id: 828b42c5da0ad2a72bd59a881b4a66689588329a
prerequisite-patch-id: e8742450795298b89357cc9115f8f58d41aaafab
prerequisite-patch-id: 7c1bb95485277a5549d233e980f3616ff5aa5697
prerequisite-patch-id: 2036c41220c411da6554684e7c4158d6b88da75a
prerequisite-patch-id: 4ef593bc57f835036977769f6e58ee8c21e0d3ad
prerequisite-patch-id: 34bfcfbbf1670aca31f65bc13104a7cd281608dd
prerequisite-patch-id: f870a6f2afbf87530ea0a29d353e82749d2d079d
prerequisite-patch-id: 0ef8249eb86bc02da619177a80e8c69109d0513e
prerequisite-patch-id: ae2dd1a0b24bb4da69031615c6e1f0687d25b9e4
prerequisite-patch-id: 2b1c6476b4d558ea7aee72dfd6ccfe3a90c71b60
prerequisite-patch-id: ac469e931ec75fbf72259ff042b1da89f2fef847
prerequisite-patch-id: 7468b9b1c1f3d452567ab3f3cfaa589b083ffa5a
prerequisite-patch-id: b31ce97e021dde623374ff5fe94a1b094e7f3f89
prerequisite-patch-id: 14e59dcf1dda62ce7eacd4d74b9d6eb5839d0583
prerequisite-patch-id: d03fab3148f214b95f8ffe9b9f9c57dabf94a123
prerequisite-patch-id: a47272b435a66624cc76ce54b788af48318611c1
prerequisite-patch-id: 79e98de64a4444bf2c6e9d56cad09e397c8c7c7c
prerequisite-patch-id: 4882d564a62198c978f96d5055b8547ca9db2fd1
prerequisite-patch-id: 48d2f631926d29a454f81e93866488a5de40115a
prerequisite-patch-id: 24de2932b7db15f9fd1f8db22c221770faf1ebff
prerequisite-patch-id: 9059b5e954d8b80fb612176780f8b1f09e599f84
prerequisite-patch-id: 0582de7c0c23f0bed86690c338177193c006cc13
prerequisite-patch-id: b005574af9a67b1806641a5e87d3202482917349
prerequisite-patch-id: 98b23744a051538d6ea5f0d9f7a339c04badcf66
prerequisite-patch-id: 28de6c630c3280836266ec36f20dc6e1f4b95dd4
prerequisite-patch-id: 8433daedd2cc0a7b9413ff3d8099e256ed08ed55
prerequisite-patch-id: d2bd2fc6a9f445c867e56d55d2a7555dc1b09d60
prerequisite-patch-id: 8d9cdd38ed77e6f4c843fef1728bb8ca1344bb13
prerequisite-patch-id: 3c8be762a21e4ce5e4f84a094e1fa5582cdcd97b
prerequisite-patch-id: 12e95c7d8179b494b083e5e1d465b9575511f245
prerequisite-patch-id: fcea8b4102385e11269d5772d7083182b9ba4d82
prerequisite-patch-id: 7aa6f3f8759c450ca2781cc8a62e73f5ff481bb7
prerequisite-patch-id: 576f2dfa7771f8ec919a1f1a8197e1cd1b6cbb66
prerequisite-patch-id: 4ca9e7b3b814db80bdcbfebc40cbc51cd57f8f84
prerequisite-patch-id: e9de89df5eb07dde5a1fbba25bb4b16861da1f64
prerequisite-patch-id: bd9bfdc605c0f2b02dc4408c3edd25bfe8af0a3f
prerequisite-patch-id: 2ab3489746cf9368ac05ae6ec49c0a62548dfff1
prerequisite-patch-id: 7e379fa0d679b184efb793515b49de967cda780b
prerequisite-patch-id: 5b4caf5372b272307b5c18f6b63620d405665eb6
prerequisite-patch-id: be4ba189e5673d6dddc92e642ad13753eea410bb
prerequisite-patch-id: 784aff29a6850a3c9276add1c1d959248429b7d8
prerequisite-patch-id: c20a31e9b6292c273f59d7fa0de7a2adb76e923b
prerequisite-patch-id: bd637e1b52e91bc2370746f88072b81f5e7a3d74
prerequisite-patch-id: fae2414e87bfcd4ce6586a4471113c6b8f8beab6
prerequisite-patch-id: c4e84683db9ceb1311d4d7df6df12ef684553df3
prerequisite-patch-id: 690d96cd8bb9a0dbfe4e2582b712bb941f1f51f8
prerequisite-patch-id: f47973efc03651feaf8be4a26636807f10d7e656
prerequisite-patch-id: b6f01e4c3c4845399e32a5f922e52c401e816142
prerequisite-patch-id: 8080b0f743dbd8e612ce837a8c449216c26d946a
prerequisite-patch-id: 239c2a4458ae429e9af03e19a8464ca416e5710d
prerequisite-patch-id: ae07cdcd45b01042c056644cf9fe40434b712ea7
prerequisite-patch-id: 5a17dd86f6e69ba5052f000d3f017f999a2a7da5
prerequisite-patch-id: 13f4b1470aa5ed198246f8b81819f93b26727246
prerequisite-patch-id: c6526d115d42eecf7dd973cdd39052b751076bd6
prerequisite-patch-id: 5331107347e0208050c6a433e5375dfecb54ae56
prerequisite-patch-id: 01e9bda614cde8f6d7252159f71ccb9d292948c9
prerequisite-patch-id: e8eb0811c63cbb5e2569c626b5d7f4abc313ede0
prerequisite-patch-id: a91b387735686f1cc98ee2058e6d76f161e20e94
prerequisite-patch-id: 2c48f073b5f86188132bb90a1786c11d74e6460e
prerequisite-patch-id: abaa7217b9a10d24a5808702762ea76a1973101e
prerequisite-patch-id: c4851ad2941e5a1c1c4bedbc66c4e565bcf7860b
prerequisite-patch-id: c1a00b45f8f418fec0b98ae3bc64f5f0bb5cf071
prerequisite-patch-id: 06231e79648850e97c94c220b87f9f6c11968b36
prerequisite-patch-id: f2b1da5056b1a73704a91f449ef90c378f79d9c2
prerequisite-patch-id: da701acedae64310a7555f13fd38e274985c8ae8
prerequisite-patch-id: c35a757d802bae143e7f8bba3a2d93272f7acfca
prerequisite-patch-id: fe241b77f4cf46d664b7c18105e943ad23c13fc8
prerequisite-patch-id: f92061f8151db13b7e41acf293ab04da12b75bd7
prerequisite-patch-id: a3611109a13ff45d5730095168b5de248a668185
prerequisite-patch-id: 557599fccaa7ce6d1ec0df3fb168e4b938085543
prerequisite-patch-id: f8bd1679908396580e6dd2c8171a7e76c54cb264
prerequisite-patch-id: 6ebdf42ab942b1c3440e00e4b9d12adef15bf473
prerequisite-patch-id: 54b8a6cdeeb71fc7abfcbdd4cccdad323c4b4e81
prerequisite-patch-id: d87d83400ddeafb5833fc3514b92c54913f165cb
prerequisite-patch-id: 987ee2568e316c21d3d53501458a284b88a88813
prerequisite-patch-id: fad0be2448dd7e335d74d97949703212610a22a7
prerequisite-patch-id: 2516b35bd9657bdaeb60af415d7de669b746f14a
prerequisite-patch-id: 69cd3b91400371bfd255262e732ccac957192809
prerequisite-patch-id: babbfffd8ae0ba6fefd8d05e62de744e3fdd767f
prerequisite-patch-id: b47131191f823638e55e07bdcf0ffe4ec0ebc3e7
prerequisite-patch-id: f91a3dd5aa9fdf94cc75bd6a35c9d8733f4ce849
prerequisite-patch-id: 0b5ce2b403d2c2895ce9efbc1774c0c91220361a
prerequisite-patch-id: a161acef5809ea2a240287f6aac7d7f07312cff0
prerequisite-patch-id: 06d3c6bd08889d03c722373834d726c203da0729
prerequisite-patch-id: 12211240bba77b99d1b48b09909c1336632c2f1a
prerequisite-patch-id: 6685356ef28479bcffc3ee7e283b780a832dea93
prerequisite-patch-id: 986db6b778269543a50eb7f57c68b032170e4fe6
prerequisite-patch-id: fbe1455c0772f7bfd722a4229e8dfd63e7aa8ead
prerequisite-patch-id: bdc1d1a015a5297a13cd0be767ae3b2a81dfdf24
prerequisite-patch-id: bd71cf4a8415076e27ebe0ae72de3e3111ac2a72
prerequisite-patch-id: 12b4dd849f679303b05472bcc7e9c28acf2e01ca
prerequisite-patch-id: 518eb30907d321c7f809178991262f101ed01f0e
prerequisite-patch-id: 84f7b9128d5ad706dc1b23d99f748795d5a5af58
prerequisite-patch-id: b93765b6faf24479ee6733711fcb54f6ba9e80bc
prerequisite-patch-id: 141a772fc40ad3174ab337c770da5142117b44a1
prerequisite-patch-id: 74bcd71457d37a5842510cff4621afedf828c85d
prerequisite-patch-id: b2e27d6a3d1e2e6cd027ef825c93e23e6d66da4d
prerequisite-patch-id: fcd8240be813583bc95ff1e5daa89a6f17a9e1e8
prerequisite-patch-id: b6052be105c60175b922eab40c00f126e88a733d
prerequisite-patch-id: 11048e20205af44c362e0312fdc59bef58439d0e
prerequisite-patch-id: 63fa8761ea5e8782b538db2a89978aba8ffd40dc
prerequisite-patch-id: 0e714a42c55b0cb5c284453829fda0571f8fa718
prerequisite-patch-id: b975a4923a039d407f5115245a8629b1fc241bcc
prerequisite-patch-id: c38ab7825fbc69603f0decaaa14b2426ccd8c8f0
prerequisite-patch-id: 1bc25092d2a2bcaf906020bed920b21564adcf06
prerequisite-patch-id: 5a8198d8262ed485ebac34ccb01fd8a567a1c0fe
prerequisite-patch-id: 73fed8db4d1043a12ca3f09ffb97bf83f850b041
prerequisite-patch-id: 6272ddc0763639fd5d138a1b7b2bd81d367f84e8
prerequisite-patch-id: 5bdf5e5b9bf15532ef5d106ed3746ad4e2c0d8c3
prerequisite-patch-id: f39d4815e622ba49bbac7e16c04a1b9017142cfd
prerequisite-patch-id: a897e90b32d07f6c66dbe3f75ad748a150ec544a
prerequisite-patch-id: ce9e46187e2139bce079eb6d387720be264330cc
prerequisite-patch-id: 68b3a54e43e6cdebcb1bc71053dde296b7b9fb98
prerequisite-patch-id: a6249a797bd7a8cd2053dbd8f1cab6395177a4ae
prerequisite-patch-id: 28379c98daab52b21687297ae42e6122d2186486
prerequisite-patch-id: 4c947009156abe333884850514d4d5f1e3700796
prerequisite-patch-id: 842e168b4109a8d6cf6556bdd0a37aafeafbb40b
prerequisite-patch-id: 32571ea2ee4ae51d12e7080a1996634a1acfd2d2
prerequisite-patch-id: d3a5d6a5d3c732841f645d4f6ef5d3b989ae5381
prerequisite-patch-id: 5844ceabacd8e661b0b91d2cf0dfcefddf05d3c4
prerequisite-patch-id: 4e2ebec5bd052005a98f36894d04c2ad5cf9d45c
prerequisite-patch-id: 8a4da06e8c53d59514a000c4c21afe3701251387
prerequisite-patch-id: d57ee36a89ea0531fe4321204ab8d030208cc424
prerequisite-patch-id: b89a85e04f6578e5912864352e41500684d58d00
prerequisite-patch-id: 0dbda6aa385e8aec02d6d8ea6aa3a8070912c6a0
prerequisite-patch-id: d98e8047ffadfdd6c2dee1f86470475431e311d2
prerequisite-patch-id: 0fa8fb5039e16258c2da68b151701771d8b43ea1
prerequisite-patch-id: a2a3cbc76f3abf4288c02293b0802530e1c16dc9
prerequisite-patch-id: b7c09e6b065599724e31d4eb1a9eb9d92635acda
prerequisite-patch-id: c65a34dd42b90853c72c56cd12aec6bb499954a3
prerequisite-patch-id: a97bb0c4915f1c83c9b6d594f5c480a61f2a4b4a
prerequisite-patch-id: cbd13f397df22d512d16060969a515b62e26debe
prerequisite-patch-id: ed6ffd89cf2f05ff22e8613f8e0dd9111d960553
prerequisite-patch-id: 58a8cb1ecce11d703b09fd9f0b88063e1d150ac5
prerequisite-patch-id: 1015cfce9337f5f0715dabd76c9f15479da93316
prerequisite-patch-id: 176b2d61183cda20b584d7ca02f75c0135213b80
prerequisite-patch-id: c8db74bbc82eb938f6db95a4ae07be597de7ffb8
prerequisite-patch-id: 60b3f994eacf0ce00eac1a5e3e3870948a8f8181
prerequisite-patch-id: 85e396689a453acee2f2d5834c97702654e25e02
prerequisite-patch-id: e11cc366c88e2b2adbd5f2dd06120c7ef851b1ec
prerequisite-patch-id: 1d7dc4502fe7cefcd5d7bb81a1e0f94c52d97ef0
prerequisite-patch-id: 228bfdd61722db7b928d73cb6f64dbd88a5bae91
prerequisite-patch-id: a196534969c723791fab8f0178874cde1828f1a7
prerequisite-patch-id: ce4b2e0a1610cf9070bacb9346bc92ac777dcb2d
prerequisite-patch-id: c6f4a1a443efe023894011a6fc93c978be1edadb
prerequisite-patch-id: caf3f374d6b90fdc158923aa8c36d9db9f1d7fba
prerequisite-patch-id: ef4d320adeb4ecc03432efee23b8c8ee4ebbd96f
prerequisite-patch-id: c7d61a79e52742e2736570b921c7c0d4467ac454
prerequisite-patch-id: 28d6637521d7215c3ed6d51d4781299bfbdbba15
prerequisite-patch-id: db67da7c4a90d25fd63efae9d72df3c3a2be5c48
prerequisite-patch-id: 315e6a3ca7dca4e27eccd9159b11d98a3f120fb6
prerequisite-patch-id: 2c05a8352f47c758d06f4e19fc37e68fa99f485a
prerequisite-patch-id: b368048a1b885a34f368b42b71ccc115e6cdf9a6
prerequisite-patch-id: a470fe0f8592a4be610dffba86b0c2942aa67124
prerequisite-patch-id: 671428d14866eea987053850bbb6f0ed793731c9
prerequisite-patch-id: 717f45ca342d82911c122d770f71bbbc867e4209
prerequisite-patch-id: 3bd53590e809af4fd514f573acd22d07d072a042
prerequisite-patch-id: 5de9cda38039162c6382bd6f6243348ad37b9893
prerequisite-patch-id: aded537091efe318c61069de39dfe0d7462217e8
prerequisite-patch-id: 7e9e84d857c96a7ed0718f6520d5f885746c08a8
prerequisite-patch-id: 7e6a1e326837048eb6d530da44b47242a504e32d
prerequisite-patch-id: cf597647e59ffec768a15fd51ab678ddd3983864
prerequisite-patch-id: 880c1c9c6635d33d76cfc1f029ca0c6314477e1d
prerequisite-patch-id: ddff5546678eca4d018abb2f6b78ce55af65532c
prerequisite-patch-id: 0dc476ab1c97bfbb4badcd92a1ead665bdcde1db
prerequisite-patch-id: 2c5d585565935d6ed9fd1a060be06a9f431b1b04
prerequisite-patch-id: e3eb92a1f6a4cbd438c284b36d8d7964f9a75b42
prerequisite-patch-id: 64a488e2c17249d9203cc12173a48614ffe5c8b8
prerequisite-patch-id: 4110011726e98ba2961a48b45ddb933700406531
prerequisite-patch-id: 3382ecb62bcbc173d24f92272bcebb7618e58f8a
prerequisite-patch-id: 0b9f7fac4d949150719b96cc6b1a24e428441159
prerequisite-patch-id: a1fe629e21d584a7474d91e23e78ec86b9a35edd
prerequisite-patch-id: 9344f5ed13aebda7eba449111110c2d46de43879
prerequisite-patch-id: e91b3ad206134a7d77a53365f770f5d153fcb7e6
prerequisite-patch-id: 54357b34497c9a6fb50e2e274dc7a1aaf62c3397
prerequisite-patch-id: 1bff8a93b3b6f3dcffc09abd1548c4c77951d6ab
prerequisite-patch-id: 522ac68bf4c9385c560d5689a89f559fbfb2dc2c
prerequisite-patch-id: ec6074f8019dff9859031502df68e96612e71311
prerequisite-patch-id: 64fece3af38aa68bb2951968a4fe481f8435449d
prerequisite-patch-id: 68846b3d7c1e9e3db0f979ebf288e6e0dff4a9d2
prerequisite-patch-id: ecddc3ab3f47408a2083f6d795ee596536b2f818
prerequisite-patch-id: 2169fd72d93a2d163922b94ae225f6dae9da652c
prerequisite-patch-id: ca9ab1a3c0d17cc28824d47e661b2d7e434d5bf4
prerequisite-patch-id: 00ec2407872efea85bbe212a23558108642e3596
prerequisite-patch-id: 9fcfc7462975a0e0431ffa69f7be04347f3d82a7
prerequisite-patch-id: 64e2c73bdb5ff8f38d060b0cf00774b081b134dc
prerequisite-patch-id: e2b53a4dc7df91c5cfea7f87168975602cfa10bc
prerequisite-patch-id: a9af395b8a1cb77d9d3b9d4a6afabdba8baf5d7d
prerequisite-patch-id: 0279bf8b7d925eff9faf878d25e56daf3a3fdd5f
prerequisite-patch-id: 67480c1f480d636f46a20df4c7a2c2ddad4f91eb
prerequisite-patch-id: 658e0820bdfbb7a23020b7e54761cf76142b340a
prerequisite-patch-id: 8c1e50a915749ee70e3e2ca0c5566a04004073a5
prerequisite-patch-id: ae8e8bd341029df1b0451947b8a5c924b6ccaaac
prerequisite-patch-id: 39e0751d3e3e0b1f9eaff64480276908c00db062
prerequisite-patch-id: 305e5d142b37169c8b56cebed695607108f8b2d2
prerequisite-patch-id: 010a9187b4ca58a6d0ca96a21d2c845f16966e7d
prerequisite-patch-id: bd9b9351ad74357ec422732d401844fe4edd1437
prerequisite-patch-id: b4a255de3d606f8a9add449c5e39dee80a2c337a
prerequisite-patch-id: 89b8158379b9666f3e2b28b12f06bf0f5a3feba4
prerequisite-patch-id: 97d74b36a63f5fe206c7b628d16c4ba5c973a122
prerequisite-patch-id: ecc94017ed3d47a19ba44155ae978021c422bf13
prerequisite-patch-id: 206737cb2e2ef293d0e076e8b8a1feec59aca141
prerequisite-patch-id: 29756e9702e78068687d3457e9044a190357951a
prerequisite-patch-id: f879715e383265e617401cf03ae6fb29c0a1c631
prerequisite-patch-id: c57cc8b23c99955438f892fd23ac32ed6a7bee7b
prerequisite-patch-id: 8e6d29efe72fc20ea556ee58c80195961e8e1dec
prerequisite-patch-id: 4393330ecc7f7de3e4977c851b3c3dad63ecf6df
prerequisite-patch-id: 851896ab82d7bd8306c62046fe112c69dffb2f86
prerequisite-patch-id: dff80d95572fc07080315dd3f7205b6f5f4c79e3
prerequisite-patch-id: db5861d4653824e69a94dcf3bec10737480dd49b
prerequisite-patch-id: a7cb1199b09cb32b0d21d0097f487208a1c50ed5
prerequisite-patch-id: ae26e380d8453a7083fd7a11de8a3f12a5570b73
prerequisite-patch-id: 2c265c7410be36d62ece6509635a3c8e48df8c05
prerequisite-patch-id: a59cb5dd3292e825385de33a12891695bba15272
prerequisite-patch-id: d712526d7e3477a01c04f29c862bb3dc71af132c
prerequisite-patch-id: a3abdf135a02164047ace7ffd842bf3042079327
prerequisite-patch-id: f19cf54c67747f31a7a4cae253f11ceae5b0778a
prerequisite-patch-id: b9254e8aef87fc50503b3242e3cf4b99a25ad441
prerequisite-patch-id: 50fb386a0658ab5e3e85c111a155b6455d33c8e6
prerequisite-patch-id: b6cee32717ad9df6ffa849743e8115824bfe0f49
prerequisite-patch-id: 0023daa4c3bad2bdf6b41ced37c17b6b5e7f7ed0
prerequisite-patch-id: fe0a0db1d9d52c5e4cc52d199f2f9cf898acf5dc
prerequisite-patch-id: 420a092785aa834a1af174160530b0cb348d0043
prerequisite-patch-id: 3e0a2305df1d8ca163417097c12e0d965c7cb9ad
prerequisite-patch-id: bac1aeb5bdaa365b21855f225400f8707f8fc7e6
prerequisite-patch-id: a423208024767238b83512c67d15a29a06c8d033
prerequisite-patch-id: 100ef2368e4307ef3f48cd565fd6c3ff4acf79d6
prerequisite-patch-id: 8b9e3fdba565df5955c3a33640702c0eabebfee4
prerequisite-patch-id: 93bb8b6c4259445b62ddc2e0f67c8632c681fafe
prerequisite-patch-id: 6dec433831cf2a1264ae10a68ef96366047c2d87
prerequisite-patch-id: 7b5dfcfdcfe0f79fddab3afe000389b0f9ee6ff2
prerequisite-patch-id: 79fe17d962d7bd96da6c85924dec2018ddaeb23e
prerequisite-patch-id: 34bb6a2f2f27c7563f3189f5e6651226d7e1c659
prerequisite-patch-id: 1074d70bfbb5fcc193d0b25f791ebd2abb4a5172
prerequisite-patch-id: 3674f2e8e079425b55e0d1f17e785d84127e7ea2
prerequisite-patch-id: 4540bf211212235a5d1b3e6927b66ad044f884b8
prerequisite-patch-id: 9906243f6402a90d1f82b6f5ccdbdbe453af59a6
prerequisite-patch-id: 99bd02deae7502bcb1f5cb1f7cef72fb567b9b40
prerequisite-patch-id: 0fad28230ada2200a697d432570d7d6ede318371
prerequisite-patch-id: ae5953706d8fdd5c34890fef8138dd065c1979a3
prerequisite-patch-id: 9675b3b26552ed86c571192477c87ddc1dc933e2
prerequisite-patch-id: 9d83157d531c9f79cf1b16e3473acce4707faf38
prerequisite-patch-id: 98c62593878098fc83e56a7086f0687ae8df9135
prerequisite-patch-id: dbfd13693242778881dc03777eadf77807ea3c23
prerequisite-patch-id: 5831e957292ceabf8f8f04ebbc933ab49ea3056c
prerequisite-patch-id: 701a23f0db37cb3d401430bad19f18b771eb8fcf
prerequisite-patch-id: 7b3c49a455df9f756d3455e6d5fd61d144aaad21
prerequisite-patch-id: 8b4046224a06cdd3b8c64e291c23e7d4d6753583
prerequisite-patch-id: a323dbd3a39f5ccdebc9e317eb67e9612b1bb4a3
prerequisite-patch-id: ad1e012be774453d8ba215138fc16335085ffdf7
prerequisite-patch-id: dbc400292e75b882d9d1318e7a04cfaa5d1586a3
prerequisite-patch-id: dbca1941ae0559f2945c965fe27ebde060660ec9
prerequisite-patch-id: c60796088b6c74586cff48565b81fb669413f199
prerequisite-patch-id: e024e638f820e52433d5441e4ec06ce71568a1bb
prerequisite-patch-id: 1fc22c719cba43f53baf467b24a9eef5d34a2d05
prerequisite-patch-id: 0aef8ea752f00ef20c17111a9bb2add553e81ec9
prerequisite-patch-id: 9dda4b2e3ae30cb36b6707dfcf74ebd9c4541d2f
prerequisite-patch-id: c168a8fa3756472ff86344c22ea2f3d99d94bc2e
prerequisite-patch-id: 0c15e00c17922c4e1644fb6e255dd25aae19d363
prerequisite-patch-id: e3a48c56c7c6a9dbf7c95a723bb2643b4b0cafd9
prerequisite-patch-id: 5aab5a76b1c4a4fe44576cd1468974f4e531e7e3
prerequisite-patch-id: ef9da80825b67dbd304464340b109853db44f43d
prerequisite-patch-id: e368bd1826a174ab1d93b4c7c7541ded093a8141
prerequisite-patch-id: dd3f01bc02c9419250f9e32e4f179557cda51141
prerequisite-patch-id: e139436048019b26fcc72ade352cac688c539902
prerequisite-patch-id: 435aaf3dca03cdb8f3657a494fc32523103d7c42
prerequisite-patch-id: 82dacfb95a7b03f5e50efb89542aaf56e0a39c82
prerequisite-patch-id: 4f36f15e89cb6c52c76246e10020248b25186b53
prerequisite-patch-id: 69c11edcbcfa97e4e2520f2610986eec3e2f8794
prerequisite-patch-id: e8b63bd65decf900d25ddf77ddd2d2ad8bd90afc
prerequisite-patch-id: 0f797adc7675457a26f2c40a258c22e8021a8ad2
prerequisite-patch-id: 15628cac740d48c53962599e0663b754ab1f07dd
prerequisite-patch-id: 6f9842459987354bbefe00d5270dc7b3fbe1675a
prerequisite-patch-id: eda5d71085e2c7ee034acbc2a524a254bbad4ffd
prerequisite-patch-id: 40cbd60ec6ea5297c9297d09dabbd9ce848690b8
prerequisite-patch-id: 2bba538ff0266ec4284049e1e986c6c4950e8aa0
prerequisite-patch-id: 1e25621f2fcc3ffe5f7c1ea7c2d31406b0db7268
prerequisite-patch-id: 902de6b90c7ac871e3a92fb9f28847693e20c3d9
prerequisite-patch-id: 01f1c282b6185a93b3cb28c1ce3e29175c78378b
prerequisite-patch-id: deb9e0756e69a292b2edc197e8a08386d56a1825
prerequisite-patch-id: 0662c667a39210e349cca30c66f2e7818f712e53
prerequisite-patch-id: c7d66e19035b91f0ad7429ac973fa9f5555851c9
prerequisite-patch-id: 6d7289d39b830888454acd1b988a94d64c996def
prerequisite-patch-id: b3c37677b45b75660d686093b9122c14f6fca2f2
prerequisite-patch-id: 817f470f332f4448ccb36e30493f11b0b7854e4a
prerequisite-patch-id: bc275f7ee2001a1eabef99380a7001287cb2459c
prerequisite-patch-id: c07864955ad3f35cf02921ceadab6deac44ec1a4
prerequisite-patch-id: 32283cf9998734cc3a7648cece25e130da71fc21
prerequisite-patch-id: 25fa7960d3c700aa66ec3518c58c597a4cf45d4b
prerequisite-patch-id: e8a8509842f5c3c9fe66743d1a1b1a969d543d7b
prerequisite-patch-id: ffbcc2459891dae18b364bcfa949ff5080ca1623
prerequisite-patch-id: 7e059f32f1aba83ec3ac43de6a59ff3ddfb09c8b
prerequisite-patch-id: 84d4a2ebcee18312d8253dc5d51e5aad9bc275f1
prerequisite-patch-id: dbf9c19ca197a8a659abb887a3b30171c23d6da9
prerequisite-patch-id: c3a198e8aba4c2fa7e56afbba1105cf11f718cc3
prerequisite-patch-id: adcdfa8a294b2be99ace148420393929406beed0
prerequisite-patch-id: 33993fb05e20e8983b9b23871b93efacfaf3f596
prerequisite-patch-id: 64705fc05b40220770efc7e6d2ab833039052d12
prerequisite-patch-id: 7b3819c4e37b0c9c4fda70a646e18a7fae32d7bc
prerequisite-patch-id: ca6d7f8cdf8b1ac7fb72cf795c20570ab8e544ef
prerequisite-patch-id: 6e5072767bae45eb76e4907ed6ac953b488c04fb
prerequisite-patch-id: 2a5bf879405fce648297639e84cb41c8e9ea8a9f
prerequisite-patch-id: e3abbaeec8093df8edd002521a3619e931d396e9
prerequisite-patch-id: cfd0138bae4de534b9f217c4b9e5d42a019d2b04
prerequisite-patch-id: 3f8170cc904a1f71db153eb699c6f6cc9d5144ac
prerequisite-patch-id: ba4d020c691ce8cfdcf3509c82ca57715d45421d
prerequisite-patch-id: 473d524d46feafcd0d9e320d1b2528bd6e85543e
prerequisite-patch-id: f8fa29b5a347e5b6e9092773f369d0b7839c4642
prerequisite-patch-id: b6cf4017e4391b69d0c620efabc5e10f9e4fccd6
prerequisite-patch-id: eaee580817ddcc70451f84796323702c44cefd4a
prerequisite-patch-id: a5abf8e11ad85b58f2924d8bd693b8b644462f6a
prerequisite-patch-id: abbdc6fc0b7ac337abfd70948ebdc75bb8180ffd
prerequisite-patch-id: edfe96bae37b9cb29c3555160575b04be992e0b8
prerequisite-patch-id: bd1ab951e7e1c643a49ca3f936486cf8ef1c6c4f
prerequisite-patch-id: a311ff478c65d977396b8816d8f777d1e785e96e
prerequisite-patch-id: da20c9481e1bd297bb22e24027c7698a8021e998
prerequisite-patch-id: fdab86a293f3bf1097c41fd73c019a210587c67c
prerequisite-patch-id: 5a6dfc40595df20afb6289217572753132dc37a7
prerequisite-patch-id: ca794fac26e8664df8bd55d83b564858a9a1f4fe
prerequisite-patch-id: 8594c13d3122cad022155eb26be5a3252be5731a
prerequisite-patch-id: eacabd1c6829e4385e38b400db3133bfa91f9e55
prerequisite-patch-id: 37143a8a415ae97519a57377bc55ffb3a6e30cb0
prerequisite-patch-id: f5b248201d710bdc37b113744634db1fb29c2c8f
prerequisite-patch-id: 6d6bbf3428d60d441adea41ee1af25fa6fe149c2
prerequisite-patch-id: bfd2fe194f74be79045e5b8379ec96224bf48289
prerequisite-patch-id: 91eaf321b7ee0df1c23a75a45624be558e90c648
prerequisite-patch-id: e31d259b107037f2fa98f2bf6ece6ead0739c987
prerequisite-patch-id: 1be3cc5cd8e1270fd941454daad45fc1a4ecb3ae
prerequisite-patch-id: 9392e825a2a0c61a51e088f00bdabe16477bc9eb
prerequisite-patch-id: 7bd38514e695fab411815ae1e16c36f56d8f5c68
prerequisite-patch-id: cc5925cec2a27d3655f68f1c1bc1f56dbc38c132
prerequisite-patch-id: dc825427a872ecfb3615c0bc4d11d0cf75df0068
prerequisite-patch-id: b2298e5a32a81928a73e68b2254ae4427abdef82
prerequisite-patch-id: 065fda916d7faca61113e1230fcc0ce3916442fe
prerequisite-patch-id: 1fd45c65fb828ce66565e0ada4a6b719707d287f
prerequisite-patch-id: 41e6039262b55260b73b8ffa2ea2578a90cb314c
prerequisite-patch-id: 8f7bee5ef55b0238e7461e251bc62c6b200be331
prerequisite-patch-id: 6c8d943b35d987b8b16d71377d6ea7162178b398
prerequisite-patch-id: cde39b3652574da00f9df3b8cf8d4739fd0e153a
prerequisite-patch-id: 7b93c7a2d01cd9f0c232fb539f6e30a30a322242
prerequisite-patch-id: 6b137a3540e52b54cf6b82d93c14eb0e0e631814
prerequisite-patch-id: b8a110e741f7c82d74c9f06d3a0f4b2a9b32e558
prerequisite-patch-id: 8fe7040beaa5fc7c4512f50dec387dba6939303c
prerequisite-patch-id: 46ba5d20466864dfdd27ebc31ed850b76bfb8934
prerequisite-patch-id: 2d41401d143af0dea348cbc6318f635d53e8ea91
prerequisite-patch-id: d4288d07a9ec723272b3aabbdfd7d66ef8c4e5ee
prerequisite-patch-id: f8b74e211643603a1cc4c61ab9046e8b3977fa6b
prerequisite-patch-id: 912bd934740536f9686de1bbb1a7aaa44a80b18c
prerequisite-patch-id: b12051000c91c8eba147809cd78dbffaf22d2e62
prerequisite-patch-id: b0b2a83922ed5721834d77c184efca08ed5259ac
prerequisite-patch-id: e74ba0315e1a3add84bc602119103ff9f3b018be
prerequisite-patch-id: 5acc1010fd33fcd6c37de9a00538285f2d6975de
prerequisite-patch-id: 5a4625fe6a1ff2ffab25ad84fc2a2350d14a83fb
prerequisite-patch-id: a2162d9ad217f7204e20beddce715c4d12c3db31
prerequisite-patch-id: 1335f9a2277228b2601be15f622fdb34c4a54468
prerequisite-patch-id: a6ecd68e11145120fc00b31456f637e50a6011d0
prerequisite-patch-id: bac7fe13dba1749f41c5845c4a0458f775af594f
prerequisite-patch-id: b6510697ac41b02f9fca958931e9e90efecf66a4
prerequisite-patch-id: 25335545bf3a53f9353990693b6ac078d98dc6cb
prerequisite-patch-id: 85276637b7b09cab96bc49a7f3871597dc0982ad
prerequisite-patch-id: 1b04f13550f070ba2d47b243a1a1fbc2b2a8430d
prerequisite-patch-id: 083be875e800862396500ac683b877f93178616d
prerequisite-patch-id: c7899ac3077948af238b2c0713309adc9bf0e22b
prerequisite-patch-id: ef4c5255e87fa39761c07e0e88e69ca18d01b6fc
prerequisite-patch-id: 947833da23853d7a7e410d3757fced9e4de07a42
prerequisite-patch-id: c7132c33f303091f946cbce90462ac31a9679e87
prerequisite-patch-id: 103b50f53a917937a4036dd211229e4e01b26f64
prerequisite-patch-id: 1c030235b49e642307daf303cca70c6bedeaab98
prerequisite-patch-id: bc423f2ae68a056fbbd39e9cd9f25847fef5b4b0
prerequisite-patch-id: bc815eca2a8d7df08306b7abc52e60839b76930b
prerequisite-patch-id: ee32cf500a556f06179c2eac63185a873102dbe8
prerequisite-patch-id: 0a83237507ae663660bbbd8130e8ffac69b529a5
prerequisite-patch-id: e3e3cec105a844e6b0f8f4416da3803cc043e40b
prerequisite-patch-id: aa726d5281578bc00eb35f9cb93b3b3da10586ed
prerequisite-patch-id: f543a77b642d1c2b65e48e7f010a508589f7c1fb
prerequisite-patch-id: 1859b7e21a983d1066389cb83adc9931b20ed260
prerequisite-patch-id: a14c8e1b7820228fd655ce8478fa9ec32e0301ae
prerequisite-patch-id: dc9a6b657bd8b2a87e93479fca0fffe68c9583b0
prerequisite-patch-id: 64baccd85bf0aac2a054a843e1b42a6869ff6c1e
prerequisite-patch-id: 8dca5a621c33bf4e7305889237fa1181aae69979
prerequisite-patch-id: b235bcf105adb517ab160ea428f46c8c6543fd8c
prerequisite-patch-id: 2ae8d03ee3f057c85440b26078f8338ee45a5d29
prerequisite-patch-id: fd506c6fc198dcb006d7490fa5a03e6fb3198094
prerequisite-patch-id: 91dca65d87f846b405288c7338f45d7090a05d6d
prerequisite-patch-id: a65d262717e7d1ea6bacbf4b0bbdced42e28b1a7
prerequisite-patch-id: 6415e7921ad4d3ecc45c46f8dab5b6ae5c02f57c
prerequisite-patch-id: 966d9800cd972967e06faa561b07c73885c0d2e1
prerequisite-patch-id: cf80ed18936d48131b92f9abefbb18941cf44894
prerequisite-patch-id: fe22bf698b3921924d84fa06b4a86c82c447d9d6
prerequisite-patch-id: 8e48ef84af4649474441379701c2e838efda56a8
prerequisite-patch-id: b2d95c9e27c7dd43a8e704ab91177a89df0ec327
prerequisite-patch-id: 37aa21b6563010748b34462b7545aaa037cc65f2
prerequisite-patch-id: 3152e267abb34308be1c3dce0f34f61e30e6bcf5
prerequisite-patch-id: d6e4d593ec709d536f8554bf9c5d3819e957543b
prerequisite-patch-id: 134807df113e779334d46e3b25cef200b6f04450
prerequisite-patch-id: 737cacb83b058c8da4040779a0ae92fb04c7b2d8
prerequisite-patch-id: 085508c89cb2c57fbe808dc77b814841a89a6761
prerequisite-patch-id: 33427d8256260ec4331730edc00fa60d74f88d3f
prerequisite-patch-id: d06d19cdc9f4601d6761475dbe00011fd56b707d
prerequisite-patch-id: 37347b38946eba346a1a11535f6861b333925c7e
prerequisite-patch-id: f774a495ff3e346ec59df14becd9c835277adce2
prerequisite-patch-id: 0242d712abb3c1d3406e416f7b45bb550232356a
prerequisite-patch-id: 7769c92989c77e6f231347d1a718f06481631d3c
prerequisite-patch-id: ef20d133a0ff76744c0606545f9a0f6b953b459b
prerequisite-patch-id: 73e94b73b1fe2ca5bd199ba1699bcaa868032261
prerequisite-patch-id: 9e063a742426a146baf876f0f900560adf161465
prerequisite-patch-id: 9d808267fe78d65b8cbea74993e02cafb5b7e0b6
prerequisite-patch-id: 6a9823811238c1cdee8f354a875682b69fe8bb98
prerequisite-patch-id: 25348c891a7e79b62f698cdf8069645e4e3ed758
prerequisite-patch-id: 3fa2744544b48de0156dee7b755c595106da2019
prerequisite-patch-id: ee425ae8c1e310461701f41f7d9d386f650e3477
prerequisite-patch-id: 80a1c70cb152ab3194aaf64cd7a1043bb062b2bd
prerequisite-patch-id: eec344d014768c9091b207f3ef9cdc4447648cbd
prerequisite-patch-id: adf231d3424c0fa8fca10039b3df5e310fcc8900
prerequisite-patch-id: c82985ffc0fc2bfa29806481a879517eff1ae9ed
prerequisite-patch-id: 457f77a20818798e868c3253630a8ffd33f0a08b
prerequisite-patch-id: dcb1438aede5923e4802c5ddff5106183c1b182b
prerequisite-patch-id: 89a706ce9ba9a4ff7d737717b4e01ea32d07f524
prerequisite-patch-id: f9ef17a80a053992627e820331cff23fabba8691
prerequisite-patch-id: 8eefa29ad410a28ce062108a0cb73f74e306beed
prerequisite-patch-id: c374ab1376d3964723d92848ac5733ef3a081bb6
prerequisite-patch-id: 86b61f70b2e9eaa6fb822aadbd119fac853c83bd
prerequisite-patch-id: aa232d19616eefbf0b154ed4bae61421e0b990ff
prerequisite-patch-id: cf7e216ca1546c9e9196b25a30ec31396d22373a
prerequisite-patch-id: 36245749806092e8f089d325b7af6dabba6fce60
prerequisite-patch-id: a7abcd98aeed7b9cb5acbfa7fabbd0735e0c3ec1
prerequisite-patch-id: 27c40b845f70bb783c0a28d11ebaf925ec4eeb09
prerequisite-patch-id: 4c16823421842d52177b88bb6613c5e2cf828728
prerequisite-patch-id: 699f010120b2608bc9a9cce838b9e1530089a374
prerequisite-patch-id: ca7ffa4e990be2fbce0850a5938717735a4cad0d
prerequisite-patch-id: 9f4f47ef3f72d6f1786cee41735048b0ea20a05b
prerequisite-patch-id: c941adb3b0fcf862951855ebe61d35a21e068cad
prerequisite-patch-id: 23a54e25a15db7f7f2db7aa6ee75201b62d61340
prerequisite-patch-id: 00f131ec1a7f116d6a963fd12447e6e7cd3b89ae
prerequisite-patch-id: 0e1c487d9e45c6f99367c597d7b0d9c12dd9c0e0
prerequisite-patch-id: e66c3e07ab6c0c16a727f700340d98730f3f0b6d
prerequisite-patch-id: db2c4b372b8445e60af4a226a1a0946db9c9e975
prerequisite-patch-id: 6ef8f7727160af89ca9b1738acbd51bc2523b119
prerequisite-patch-id: af4bbb163d4244bab1f20ecd97638f17ae962aa8
prerequisite-patch-id: 1a0b5dc2cbc259d9d138dcf44eaa792a690c6245
prerequisite-patch-id: 255bb99d1da0ff03f7cde5fb6cae1ba832d06876
prerequisite-patch-id: 42266e6b2c535b3ccba62c4ac4e1b8fa4c9a1fc4
prerequisite-patch-id: 9350ef67ec00962c32302b8efd5efce924d2a8fc
prerequisite-patch-id: eee882f06e90c18d2498b9157cf7a2d0d43fb101
prerequisite-patch-id: 1e466e8a4786ecaefea1c192f8a7eb24790da14e
prerequisite-patch-id: 1cd58a48d948392303aad74947036dabe715ba32
prerequisite-patch-id: 1a3a8a4b3a1b04599d1138fc946299efaf0e2b6d
prerequisite-patch-id: 428ff27b3db92bf30e1d40d518c8052ec5ce0d5d
prerequisite-patch-id: ef22a0b36bf186a6f658a41e1c1ad02fa737f223
prerequisite-patch-id: 7cebb8a57df93f68766df883b772c505af538e7d
prerequisite-patch-id: a5153c9b05bcdccb6cf7bbb247949ddc4d786dea
prerequisite-patch-id: f849e2244834b3f0f39129772d18740fed1492ae
prerequisite-patch-id: a261319f19ffb153ff526a59b005e5fcb54a7444
prerequisite-patch-id: de4e0de3a6ac9a2c5318843d9f449dee8e67864b
prerequisite-patch-id: 50decc74e6cef63363f0aeb85c16db27022774c6
prerequisite-patch-id: 506d124e8f127dd0bf1de8c4041c908f6a7fbacc
prerequisite-patch-id: afc2094721eb3f72ab243f38545f2ec555e36ca7
prerequisite-patch-id: 2ed89d74db65405d5ad74340b02b4c0b479a63b4
prerequisite-patch-id: 267397dc3ee2146d4d0686ddc4c986d40a0260fd
prerequisite-patch-id: 04b2751523be0d02aa5db92a07c2c095725e52c7
prerequisite-patch-id: 2f9cab91c724bd25ac50d8ef76902a5fdf817974
prerequisite-patch-id: 645bb83f62e90d01b2acaed5bef0e2826c46365f
prerequisite-patch-id: 0fa8e925acb66d88ef6e9d611a5d0cd90e61f7ad
prerequisite-patch-id: deb215e5ffb669688e907ee06da9bd29e2a785f9
prerequisite-patch-id: df0bb8c1faf264952c5e5378440d62ca74409b48
prerequisite-patch-id: c8a24accf8beed795b740fd7d6dc4ad56ff6154a
prerequisite-patch-id: b86c2193ba6089a1e8a9bd340beec44d32cd63b1
prerequisite-patch-id: 560d5c1450f0ba6f16b631f093eb52f010ea20b1
prerequisite-patch-id: 26cbdd2bc673859dda0aa8d9362bcc3584ebf0fb
prerequisite-patch-id: 50b2fe2514d2e4db9ba243cf93c34492ae055460
prerequisite-patch-id: baf265ca25d662ef34a28c9da8c584e388fefe4a
prerequisite-patch-id: abcb94f55075ad5579adcf07ae029cdce4c496b0
prerequisite-patch-id: 8e1fed6cc23e6e5c74dfbf382822d637d2741eab
prerequisite-patch-id: 4c3ffb2bce9d01e07175de6fff5160cb47e0cc30
prerequisite-patch-id: 42137a40302a477bcaf8793a189e85b427655f32
prerequisite-patch-id: fbfb034bf96fcf1d12476bc1ff1e2a39d9a84e5a
prerequisite-patch-id: b9e10bc23b51361448a17d57946f8cf0a9a055db
prerequisite-patch-id: 7780da9d7f013c1364bfa9541ea51644f15ddc1c
prerequisite-patch-id: 41bf6ef35b920b3fcd5d7a23ee756eb076165779
prerequisite-patch-id: cf46f313dbf9b8000742b06c971de1ea1de7eef5
prerequisite-patch-id: b731b0144b6e1273085223a74f9724818d3cbab5
prerequisite-patch-id: ce7a7e6b1d6c16a76d10f47ceedc20914061af8c
prerequisite-patch-id: 274e60012ab874ed37ec2b8f415d427e711efe22
prerequisite-patch-id: eca30b700eb781a97c34f78f035a130d31ea0096
prerequisite-patch-id: dd87188ceee4cd204834f79d7716e82fef55d5b3
prerequisite-patch-id: 3fb7e4dda2878913c431547c796d75f71497883f
prerequisite-patch-id: dbf53a6684924ec975b86128498ba28a69932475
prerequisite-patch-id: 81879900c3c84fd7dbf6f52c6310a945b2e283ac
prerequisite-patch-id: 13357c764d571f2b0ef70ff76ac87fc9548b387b
prerequisite-patch-id: 76e71efa52158f334ec49a05891141b24d5ba9d9
prerequisite-patch-id: 7078bbbd027959c510fefc9d9d345865deeabb19
prerequisite-patch-id: ec3616aafbfb3059ab3007ac0743d9ee76377310
prerequisite-patch-id: 89cd03c9a169e092c2f78052e5342390f167e1c3
prerequisite-patch-id: 83b3b8b4cb18daa6f66d4e6950bda5b2b01471ed
prerequisite-patch-id: 4e477804cb76fec74a921b601778b65eb18d32a6
prerequisite-patch-id: 8b0cf4f09e6729f09deeb388005d5efb06a9c484
prerequisite-patch-id: 8304ae7d8849c307c203e47436ba615a37dd1303
prerequisite-patch-id: d3fbffcda3daeab1d1244dd1edcb548e78e3ca53
prerequisite-patch-id: d013fddc744f3fc0d23df4bb150bae77986fb275
prerequisite-patch-id: 769571a180ef4864c2c79b0b722f91bac76e48f0
prerequisite-patch-id: 75cfdc07093145690c4b60988c9f1a47b35bfe6e
prerequisite-patch-id: 9af5e9a1639bd6ab3976d4f992bd72648bb5c0c7
prerequisite-patch-id: 6d0671d555e035e120e7fe753eb457f7cd213b3c
prerequisite-patch-id: 7efa292c228aea05bb9c4b3b4aeb56e09bbf5b2e
prerequisite-patch-id: f99a3cb4f59105264bd917c4f03140fe8364cfda
prerequisite-patch-id: b3bcea20ceea69274a46e737a15424d70ce68f85
prerequisite-patch-id: d3b6de0923121e87d562e9a16dacd432b53501b2
prerequisite-patch-id: 30115611c962d6e115bdc481811e0c38d281d697
prerequisite-patch-id: caa487cfe3fc297047a38b395187768fa23f42b8
prerequisite-patch-id: 514a86339120f05a1e424028920a90870cfff1b3
prerequisite-patch-id: 13476f9e7e7c3bdbcab42912948953743381b1e0
prerequisite-patch-id: 8f91583384bb4516afcac66d21ac08b3982747b2
prerequisite-patch-id: b2ad5ecbd9a395b622bc04f891b5bb276f6f6b16
prerequisite-patch-id: 6ffda22ccd96dbdc5fe29769f0812fa60ca6402e
prerequisite-patch-id: 5ad2073f9a70273a30274e66f21923b1dada376d
prerequisite-patch-id: 7f17fc8c864c46cd6be88111b763726abb0b6d0e
prerequisite-patch-id: f527f5c56786271bae7239586e0b73b3710f4733
prerequisite-patch-id: 6e8b269740f621d5e6c91fe51e71c4af410e6137
prerequisite-patch-id: 1511b8e1d30d0d4453acf6e491c12747f6f7173c
prerequisite-patch-id: 620f8a50a4bb34294508aa7f6b156fe0c8f2a68d
prerequisite-patch-id: 1470df043dc17b2533ea556bc7923db681a1cb15
prerequisite-patch-id: 58530a216f0bf83fa9fc07329eddf681e84f714d
prerequisite-patch-id: b1cb4e3c310d019f2e07ace64142e6af71df1b44
prerequisite-patch-id: bcd35ffc46cb79253b9331bdd0c82156999731bd
prerequisite-patch-id: 7c2f92b0cd7bc8929ee8ba972ed50f0af75d7310
prerequisite-patch-id: 9403dbbe7de01c358010231fec0fc4d808e03660
prerequisite-patch-id: 0357b10b1fe266e277febfa2f9559376813709f5
prerequisite-patch-id: ce7227763df004421fe7bfa83490efc5a9f017fa
prerequisite-patch-id: d7f6e674b190af1b15d3fc2db10d976f3fc8ef3e
prerequisite-patch-id: a627e5d784eade0cf238772bcd01dd5c0475f69d
prerequisite-patch-id: 72e8ff1b7b82463b9f9f51f81f4ee411ec6d348f
prerequisite-patch-id: 466cb4767d6c36f16ca92bc8fd0a24e82e679885
prerequisite-patch-id: 782f1bf862fe6ec330e4941eee6bffd380366ffa
prerequisite-patch-id: 1c7569ff2437e4898dd6430378fdadef6158795d
prerequisite-patch-id: c2c5cfbffedf4a0323773977f3f66de3826b626d
prerequisite-patch-id: 8798b6abc41c7451ff5b1384d706298f9edbd6dd
prerequisite-patch-id: 95a51a516e8a8c3c741afc9c3b7a8c7c0911cb5b
prerequisite-patch-id: 5acc5b9b4abc79ac0b22021d2c082896f87427b4
prerequisite-patch-id: 424602d64e2a0995dfc31af045cd8d419f816c7e
prerequisite-patch-id: 9dfc3162f5079623d72c3266def7b7199af8b489
prerequisite-patch-id: d6d8dacadad477a6bd8016a47ba7342e603f3afd
prerequisite-patch-id: 9691c17fc91f5169f9a41ede710a6684b79cb548
prerequisite-patch-id: 11d0b98a9b019a8f7bc1821ca3d5aefb7fe54bee
prerequisite-patch-id: c9d0beb31debbf45e6d2391fafe9694232c0eb02
prerequisite-patch-id: 6318d0addea7b543a6ca6b1cb0c4ec1aad0b8bf2
prerequisite-patch-id: 87768d0d25f5f42720fa96a195c024008ddf27cc
prerequisite-patch-id: 55c8bbe04efc92e25ca11d4fbe7b44a7c7de9984
prerequisite-patch-id: c85d8cbb547f640a22fb9b05640ec4fab421252d
prerequisite-patch-id: fb0f5db2635916204568fb88f27c4e9ad2d39b1c
prerequisite-patch-id: c9a640c6282f028ba68769d8ad53f30a0bfd8d01
prerequisite-patch-id: 333b3ed79257c315ab49d9298b62c039130b42a8
prerequisite-patch-id: ffe373a0a85bfb129705bca0877c29bfe6e64605
prerequisite-patch-id: ef6da886ab9be470e6cdecc8d2892b999fb65cf1
prerequisite-patch-id: dd30019a2281bba9f3b407a15cf8e306928f5972
prerequisite-patch-id: f4120f3a4b6dac77ab00b4ea07a009fcd52e5592
prerequisite-patch-id: 3b0c4033ac50947df35478c9f3e6b000f491d751
prerequisite-patch-id: 6149bd4099ad990457b9f2786cd45c40d482769a
prerequisite-patch-id: 1aa86d8dd6cc94fc87a491a6d5f48569f037bc03
prerequisite-patch-id: 155a633664411496f7c02ea0efcec4119e37f415
prerequisite-patch-id: 3a31ef86e72d33736386cdba36255bbb8e057117
prerequisite-patch-id: 2afbaa2a24a32ca5d601c7ef4a99b0b62cf9189c
prerequisite-patch-id: 8d5c9d5ee745d0a2faf5275bd7b2ef4b5a14ff26
prerequisite-patch-id: 93cb586cdd43049bd01e024515e36ceff2b69e59
prerequisite-patch-id: ab17641725876d12355a0f49772817424eb6872f
prerequisite-patch-id: 49505e9d54a02b97d8e47acbaf522f0025ef4139
prerequisite-patch-id: 311c78bd4fe9361b32cc8c47fa8f6f0e9af42914
prerequisite-patch-id: cc25174ddd82439af77561df2d56b182cb5d82ae
prerequisite-patch-id: 781d22fad387e22050bdbac22d00a991681e862e
prerequisite-patch-id: 1eefda32ed27da1e7dc8022242eaed555fefb41d
prerequisite-patch-id: ef7427d3ef5ca746f94456c38bfc9c4cf1c44df7
prerequisite-patch-id: 9a3ab026bcce938ca2b621d6068f3ab8a971121b
prerequisite-patch-id: 4f8b814728bca4273c2b1b92949c70c93c194610
prerequisite-patch-id: 48ba62c5ab055d00a6488a36306ebd2ad8fb8e47
prerequisite-patch-id: 8eadc756f8a75b8ddf20b2c5b20b2e2291203ca6
prerequisite-patch-id: 6c17c545b115f31cbc8a5a603f5504c987adad8f
prerequisite-patch-id: e528bf69413bead820b6fe86a589f59df19252e5
prerequisite-patch-id: 11e542de14fef1705b0969b2a04b330be9289b1f
prerequisite-patch-id: ead99e438225d048457a3c4a2e74f6e5e590db33
prerequisite-patch-id: ca5c590a48d6562f7f123542cc718f5dfaaac121
prerequisite-patch-id: de2a86e062b5c67c13841383a2c741865721af4c
prerequisite-patch-id: 901c63e179a5b44582f968a81a900cc1e1dd889f
prerequisite-patch-id: 458615a88f7d8f5c2b5ac0bfc125dfe2ec0cf302
prerequisite-patch-id: f7e19d1db6616ca6577028c3545f1995d5a96b59
prerequisite-patch-id: 90fed9ca63e985bd6a5a4b8372ebfa06aa7f84f9
prerequisite-patch-id: ec3f2f8830c374f8b523c4abced319a6270c1aa2
prerequisite-patch-id: a3198a694f93155fe13b1d9f387145fa7d718bbc
prerequisite-patch-id: 4a5f68817aa273fcd59b4520a9dee14bfc7b21d2
prerequisite-patch-id: 5b77e8a0666c5e585431bc3e10eeffc13af81129
prerequisite-patch-id: d18d6d5501c2182ab943591c23336ec7eb09816f
prerequisite-patch-id: 1fd4bced8a07ee717b78b0bc501eec6c90817f86
prerequisite-patch-id: 935d470681d55249a6afa1647efa6b57a4744127
prerequisite-patch-id: a568f38b17b506a180ff82419ff321087eaa272f
prerequisite-patch-id: 4fe5ea996138787a552795df5890e0159c2d3462
prerequisite-patch-id: b5df37a81a708fb7e554fbea99974837682795e8
prerequisite-patch-id: e7c018be14680517f32834e73f5431e4bb215194
prerequisite-patch-id: 555d8d45f268d70471e5393e7a7e441b09ff6b06
prerequisite-patch-id: 4ce0328de142ee893aac3968bb8e74b58ea4a505
prerequisite-patch-id: 6ca806af7ec7826b61a15440b9f4722e9f8c9df5
prerequisite-patch-id: 8af372e526860a41c724822ebe338f352193661f
prerequisite-patch-id: f8fa29b5a347e5b6e9092773f369d0b7839c4642
prerequisite-patch-id: 46fb6a21e3eaa1b3214c8a2d5c7f992dc72d18d7
prerequisite-patch-id: 3ae1a16a10f1f338ebef4d54f84cf137e50d6548
prerequisite-patch-id: 357c7e1e9361b7775614626deb7d7043cc13f56e
prerequisite-patch-id: f086989877f90589494b0b6083187452abce4194
prerequisite-patch-id: 19cacba4f8163ac7a1ce91b42e8148ae78425563
prerequisite-patch-id: 4575ad14bdcb7bd22d4a19374ee03a09287cc9a0
prerequisite-patch-id: 400cb78eb47a2a3dbc8e4bc425a2a9a94dbae2f0
prerequisite-patch-id: 3540b54f4e5cd4c1ac640b8fb91ba428970c124c
prerequisite-patch-id: 3a2c3447fca851e911cbf6e7b30ac0f2eafe0c9e
prerequisite-patch-id: a14d9556a0a04d4d30284370cf68a375f1bfeef7
prerequisite-patch-id: 23b737c1362d5eef21b764f8732eb6a512f1aa69
prerequisite-patch-id: d0afda4252036faf3efc3e1459db626878506ac6
prerequisite-patch-id: 429afee3b1d4e8ac647a0867c4855a1be169cf18
prerequisite-patch-id: be28fbc7fc75da6f14df52b941103c2fe70230d3
prerequisite-patch-id: 1e1dcb0e5473b4157b51713d46ba656b4402a34d
prerequisite-patch-id: c21479374ae0cb075ace68a09d1c7dd7d5314934
prerequisite-patch-id: 74eaa98dde04042c32fd0d97d1d5d6ac57361fbe
prerequisite-patch-id: 73b246bd98d7619e7022730a8419ddf0e5ac35db
prerequisite-patch-id: 96a100cc6e91738c644e022a9eb0a354016effdb
prerequisite-patch-id: c43f14aa669ac55b558f81e9099ae569a5e2852c
prerequisite-patch-id: bd33688e243f26623b5456d92a35cddc258ac64d
prerequisite-patch-id: bf0afb50965808d0ef44059819242e6c3b490d30
prerequisite-patch-id: f43c3e2d7e6f836582b7044463729cf506a19350
prerequisite-patch-id: c640242a51396c1532fd548201e8c73bac9e27bc
prerequisite-patch-id: 6035c48c390bd7735ccd4b783415d429e71ec145
prerequisite-patch-id: ced205211c6c1ae684038cd26d69b31fedff1f8f
prerequisite-patch-id: fa37337541b0721b30797eb97655e04093b7cea0
prerequisite-patch-id: 98ed90ba7eb8743cf4f7014f0d8e1c75c8f07bae
prerequisite-patch-id: 8f7575ccca8066fd22f44cd46c38dbd34a42a41a
prerequisite-patch-id: 824f51301889ef750ea6f0fa885a947d07903fd2
prerequisite-patch-id: 91d957668eb107a88722e2cf9ee5f307c77e518c
prerequisite-patch-id: 03c36ef2824dda1023a283cbad7b24ec0e71fdd6
prerequisite-patch-id: 9423f4fed0cf90513773750d90c455e906c7c755
prerequisite-patch-id: 9d66cb7f904380a523062bc933bd524aeec65096
prerequisite-patch-id: cfe914e0145ccbd3281d4aaeb71cf46343eb3dfc
prerequisite-patch-id: 0d8b1700eff940d55d4694f36ce8faa0c1ee3287
prerequisite-patch-id: 9d51cf1b07a7d950da08f2ac785a233a5b644a7d
prerequisite-patch-id: f19c079d236f55b269106e02618cdaf16b5d3bc0
prerequisite-patch-id: 53e659ed622135eafead851561fc7209f891da0b
prerequisite-patch-id: 77a2bf6e9de58f7f5fe6ea07e63a208ea4afb49d
prerequisite-patch-id: 53f363193182875b1ea05c7a394d37dc29d40dd4
prerequisite-patch-id: 375cae1e32ab630da1a10de1846c5c515dc98fe0
prerequisite-patch-id: 14a7f8ebc2557b1ba09df48fbbaa0cfabc65e670
prerequisite-patch-id: bbf9abd3fefba7fd2579994fc7b31e7f2847899e
prerequisite-patch-id: 3c185403b97dfafa20436df67eb370177ca9a4a5
prerequisite-patch-id: c45b4d9168f6d1e4fc6537c9a644253b7f84409d
prerequisite-patch-id: bf0a5c38df4a27c2e7cd201d4fbc2db8efc9c097
prerequisite-patch-id: a000e02ebed7616d6b23b196456557057aacc6bc
prerequisite-patch-id: 44ee1b1775a9ff06b31eca020d10730bd9a7d505
prerequisite-patch-id: 19004cf94315c14ab4b0589ea40326daf227f063
prerequisite-patch-id: cccaece0df6128995faa5d8fd3daf64720963ed9
prerequisite-patch-id: f8c3680db72496270cf26aea8eef5681cfd6a967
prerequisite-patch-id: 87846637c8a0b79edb3a0176d60f9375f9db9b93
prerequisite-patch-id: 77094ebf897b26d96dbce2c7ed96aeb463a24f71
prerequisite-patch-id: 4fbac9a79b11007c334f8589fe27a94c00d961b8
prerequisite-patch-id: 99a92864c4595ab81fb5a47d1a4a297d3c00928f
prerequisite-patch-id: cb3eba42a1f7d5b99e12df21e9c70ffce7b4e174
prerequisite-patch-id: ebcce1e993243fda7f15da9f31893c0861664a9c
prerequisite-patch-id: 67b653fc0d0363e0bda4b02f3851eb2c2904573b
prerequisite-patch-id: 2755a06490e6f259fa20439fb1214d42b6fe48f3
prerequisite-patch-id: 21c8818c4ac5deb9220b502f34a6281ead926614
prerequisite-patch-id: bc2f332ae2231fc404a511ab5157a77719920462
prerequisite-patch-id: ce319527c22944cfbca8731b7098889da7f515b7
prerequisite-patch-id: 37b8664c1ed4b5248c93f1660415256066e67d37
prerequisite-patch-id: cc90ae1471413e26814bb9bb1b4868da1486d540
prerequisite-patch-id: a955504c49124d3f1ea42704d1276e6eaf23bf04
prerequisite-patch-id: f526d4e491a14d0d523bbe6a24a3327f1dadc94f
prerequisite-patch-id: 0bf64c7d80ee0a1058474db33833a05e647ff937
prerequisite-patch-id: af601f7a17c2d19fb88af632e4bcf09d447e3cb0
prerequisite-patch-id: 11944f6e5ea9518f438cf88f43dccf4ed5f395ac
prerequisite-patch-id: e8ca97874d52de1bdd41c05de706435c0d09ce11
prerequisite-patch-id: 99a253c6cd4936405f6ab3202f5562c4e2d3f163
prerequisite-patch-id: ed8f2740e7dd766c626f591f326d038d795b4a2c
prerequisite-patch-id: 6367b3d36442b727d0234b5182c0394792b17a42
prerequisite-patch-id: df10df731618b6b1d3774a427fa36bc768b040f9
prerequisite-patch-id: 615dcb9411b98a22e46f0ba3b1b4aedcf6955978
prerequisite-patch-id: a80beb53418e47a4118c3bf8a20cdb7e8cde34f1
prerequisite-patch-id: d92d31064e236252b0db92e9a116d514e450eab9
prerequisite-patch-id: 7222f2517ee7976b79b011843ade9bf68dae3489
prerequisite-patch-id: fec466a13537208ce8d801d12453830b819ece6f
prerequisite-patch-id: 1b7908ea613683cbc1cee789f58666f1191597bf
prerequisite-patch-id: 04e72bfe48ac4a6a5b4f1dbc1282f30e4c908226
prerequisite-patch-id: 8278e330943f88207ac440f11cbc38e9d4b42f7e
prerequisite-patch-id: 9bb71311ddddc53ab33ad53ac0753963104aa461
prerequisite-patch-id: 27c7e11eb21cf153bee526e6a66eaf2855a2671c
prerequisite-patch-id: d10433d01295029d2b53aab3b2b33c72ea7ecd73
prerequisite-patch-id: aa16ee9928584a8571cecb9fe378d577d15afeec
prerequisite-patch-id: cef46d80f1ce8836c9cf3679f8a4dee9bfbdc31b
prerequisite-patch-id: ec65d6ec6ae015134f206ed6602c6478e6d66ec7
prerequisite-patch-id: 8e3bae39ee9218e5a9ddc3573bbc326b8b1b8c0c
prerequisite-patch-id: fa912e55dd3fe9c0c484bfcdff0c7571028ec4b9
prerequisite-patch-id: d30a1d60b7aa6c380a49f734ba7303086708fb04
prerequisite-patch-id: b13d715f195974e155fe5ce3ac9bf185d010d8b5
prerequisite-patch-id: 91df903c3ac496e5aae53752c153e3a66b89bd2f
prerequisite-patch-id: eddb66179740fe34dd9e387921b4e84ead8c9c6e
prerequisite-patch-id: c0e05f31133bb3df5b82168c2fd914c2e6be0fec
prerequisite-patch-id: 72d2d719924784cd95954c270580d6deeb4d589e
prerequisite-patch-id: 08a5ecc56498f00267580dbcba8e39d0670be2a5
prerequisite-patch-id: 2a928e046aebdd280b4ba31fd01755d814756865
prerequisite-patch-id: 08b4fe5cc60a24d27cb2974a3e6ef13bf54dd449
prerequisite-patch-id: 5a6d69fde3597317abf982109bc34c0367f4bde4
prerequisite-patch-id: 623a7141915beb449644691014ed5e0c0bd7bbd9
prerequisite-patch-id: 2020e9f1f4e77afb7bf631208201c09daafe77a7
prerequisite-patch-id: 39456569b98339c6510dede41d579749e9ac5826
prerequisite-patch-id: 5932205f90ba488b114ce12c8c3baf6e8002f9a3
prerequisite-patch-id: 15d242b7548131fa3b9b134e6f60ea3c02861398
prerequisite-patch-id: 73820bd74d936ab7aee299befa5a3d21f65acaab
prerequisite-patch-id: 7f798d663da90f2a9950b2d9eb208d8548062994
prerequisite-patch-id: b324a653ffe8c3107b96a67541ef60c41a29874e
prerequisite-patch-id: 042506a0923a6f812ba2e6ff074c4e4eff6be810
prerequisite-patch-id: b81276c48ce6ae68cfd2efb70a69b2497c85c5d0
prerequisite-patch-id: 6a7e52ecc65e1b5b759308950e3067073e3a81fd
prerequisite-patch-id: 41903018080a53bff127cdc8ad40fa1ef167ffea
prerequisite-patch-id: a12f19ada3f045cd42cb20cced70fd81de9fe56c
prerequisite-patch-id: b7c7573c9c11fa504d8433aae7e683a6006a6420
prerequisite-patch-id: 0f6e994d2ac82bb07e61b5f2c3cd78d3ffe7c4c3
prerequisite-patch-id: a4ef208befc3260b9b2ef05691e63d28803fb2db
prerequisite-patch-id: db6e165ed9b7a581d54cd452d5893ae9c90095c3
prerequisite-patch-id: ef5ccf71cd94525e7fcba9c7c25f8113a63887c7
prerequisite-patch-id: 17398dafc395485678ddd14e99ba0e5ce9f0b148
prerequisite-patch-id: 6b1dc5cc6ab1cbd54e4d0a71d17789459f45b14a
prerequisite-patch-id: 755486a829348437900b8c5523b23027fee07497
prerequisite-patch-id: 69c93512b8ef56cbc45eb19967846c05b38b77f8
prerequisite-patch-id: bb54d7fb85efe51ad6ac310444acc38e082b710c
prerequisite-patch-id: 26c46fa53867b474e3efc8756404de515906fd3a
prerequisite-patch-id: 898bbeb7e528ae441440ede7533ba8d68d033175
prerequisite-patch-id: 7d58979e9092739c88b43397c72f55f40eb00a52
prerequisite-patch-id: 3f18cf4d751bce6752036ccfbd8a1cab78bbdb90
prerequisite-patch-id: 85b57c2b11bcb6b49aa67d1de1e1ceda3b5a2207
prerequisite-patch-id: 7d94c3ff45a7bf8381bcc60d9c62a8fc4cee46f8
prerequisite-patch-id: 4915093066639fa124095eab573aedb3fcc24a16
prerequisite-patch-id: 7e73f7c8a0b47943c5415856d29597c7c4e1f1dd
prerequisite-patch-id: 44ba4c051ff60cb1e7924955ea5e699549c849f7
prerequisite-patch-id: 43e3f2699ae0039ec5e4c268038393e5c1dcc3ca
prerequisite-patch-id: bd668557b5c1f4054ae20031d36e76f935b80ffb
prerequisite-patch-id: 07ebcb5708a94b64829daef973eda4113a6db85f
prerequisite-patch-id: 6a5f554dbd5862d09b8ecf4c92b588a9a97866ee
prerequisite-patch-id: b440f1ae40c8d5f81e485b99a500bd6a57b03513
prerequisite-patch-id: 64672f37a88ceffaf63c90f568d80acc4a4af93a
prerequisite-patch-id: 9b25691ec1c4c29ee43a2cc362f35f34f035872e
prerequisite-patch-id: 8c07cb4d17a0d8b8d10b6aab6c2bb19ed0556406
prerequisite-patch-id: 8b654cb505c4527ae8afe0c489ca13e39d68f7a1
prerequisite-patch-id: f96eabb13d7053013e2e9c966b797c9781904437
prerequisite-patch-id: 67f4aa21b28bf057b842ba7b5e54674798397df0
prerequisite-patch-id: 99bab944985f5c6dd2da6f1c9698aac25c7c1a2f
prerequisite-patch-id: a93f4cc087ba71031723f4b2e2c64baeaaec3170
prerequisite-patch-id: 44779f31ce61f8659b2e9c36f6eab6c2d1eb9aff
prerequisite-patch-id: 40ba0fd970c082e85fb4747d7e210a3a8caa5144
prerequisite-patch-id: e6bdd82be0dbdd8a589c13a0f1623b4638e0af0d
prerequisite-patch-id: 0be80e0e067fd6163b239e01d446b58c35c472c4
prerequisite-patch-id: a2f7886e1e3892f6824301d4aea294fc4f5ceff7
prerequisite-patch-id: 3815753398b1a377dc66828476138881989c7e77
prerequisite-patch-id: 42eea506d5173412a42b3275b532b60fcfd03b13
prerequisite-patch-id: 9f8ec2acaec8a91d9f5f5a9fcc1afd3c187509de
prerequisite-patch-id: 5677edab16c41eb4b4cac8cef279078f35678ad5
prerequisite-patch-id: 59e5ed8d27f87ec3b665a3436c3b7d6f9ddddab9
prerequisite-patch-id: f6ced349f8ce2c0fb5f0be5a77f62a3f9ade709c
prerequisite-patch-id: 3aca11ccf857c53e14f66277dddc76520a3f3cf9
prerequisite-patch-id: d0be4f8efea334ffda174fb8c032e68affc79232
prerequisite-patch-id: 28b0ce3121c20cff7a255627148bf84f55c8c227
prerequisite-patch-id: 96a2db3c41d649a63a9ecde6f0f71ce5b83d38ff
prerequisite-patch-id: 1a2a353fa74afe80f6e784fd1efa3b5d066c3474
prerequisite-patch-id: 9a2459d4e276aa3ffeb6802ffb31cddbcc48f85d
prerequisite-patch-id: 0f00d6c4e03c27c204e91e9ff5e9d49ee1479ac4
prerequisite-patch-id: 9bc9968cce6485e3a2c8353f92a5e559c410cfad
prerequisite-patch-id: d50b8d435051416861361f74c0b15494060af906
prerequisite-patch-id: f7c0424d78251eddff490348e031b46182ab09c4
prerequisite-patch-id: 3273bbf61b950c608ce9cf8545788536243f03bb
prerequisite-patch-id: de93d96b33c3001e8ad6655809315073da88a845
prerequisite-patch-id: ad2bb55207666e665785c4a1b93197375e6abbe6
prerequisite-patch-id: 3fe11a767f532054594ac0f01e793e18a2b54b07
prerequisite-patch-id: 966b43dd46baff08cb46054f855bafa1524cbdb0
prerequisite-patch-id: 856aafa9a5b875290a0889651bc8ba8995e52a71
prerequisite-patch-id: 8cf4e69706adfd160ff82362a3cdc98a61df6b8a
prerequisite-patch-id: de7b45bda0fb2d46c9666859f2c6dce52fa613ed
prerequisite-patch-id: 7ac228799c900a122381609b203d46a1166be526
prerequisite-patch-id: cce6ab07873fec0c181abefb86b5c9ad6e2ab79c
prerequisite-patch-id: 01d765b937259170201dd6fb2cfc9cd75c144a1d
prerequisite-patch-id: 9757aa4e432734a8109804ab22ba0cdc5d6a2e06
prerequisite-patch-id: d910b451d56db2f8f68bf62a09fd3790db1b92be
prerequisite-patch-id: 506cdf90dd0fe144a138f28994e62fe8105b057c
prerequisite-patch-id: 785a83b07b3f5d56941652e8c9a5e96f227a5ee9
prerequisite-patch-id: b313d6a1de9ecd7cc5676a9719d9d4ea41372227
prerequisite-patch-id: 809ff8a196f5db20b881f3cbefde857b22ab9637
prerequisite-patch-id: 8a8f738211d7e9f6d6095bb77365e8cf230e885d
prerequisite-patch-id: 94207cc98542ee224718ab82f9cc9568b2ee5cbf
prerequisite-patch-id: 356fb84d564ae468dded58180fce16c5a83e78a2
prerequisite-patch-id: f597b440249ee76d8afa29d482b7cc6ed9127f3d
prerequisite-patch-id: 5447ea3dc5054c8d1e796d0c38eb6f76636e935f
prerequisite-patch-id: 48c6490188bfa09e993641b3ee27d939a678fc43
prerequisite-patch-id: f3c7ecb4fd0b336864fc4a9e2ab88e598a88258e
prerequisite-patch-id: 1049144dd8500d39be16323d73fdd148bb0f443e
prerequisite-patch-id: f5e59d60089181a9adac6c7d0e8446d431b49f1d
prerequisite-patch-id: 67648e0f47105b38b851ed3824ce4dda9d8b9189
prerequisite-patch-id: 0d5c7a2129174a87bb1ac3e40bd11830ff0dcff1
prerequisite-patch-id: 4ced8d5add68ea8c23c3b73e817db1cb809fd6e5
prerequisite-patch-id: 4abbece0f529f9527a418fd28b32bdfff7d9e8b3
prerequisite-patch-id: 5ea74360bbc9860e1157043c4d9c553045e765d7
prerequisite-patch-id: bd394011c8a3c88aba78ffdbc4919c3959c52496
prerequisite-patch-id: ba667b451d9d8c123fef08e2b34cd0015e6711f0
prerequisite-patch-id: 238a6594deed5167dd5117385a0e9070875c806d
prerequisite-patch-id: b296062055bb2ccae83c7042f3d890c889746190
prerequisite-patch-id: 88e7cc91d841ac597bc142813837a680cb0d293e
prerequisite-patch-id: af29517356d3b7d8bf1eac327f0778dba5414cbb
prerequisite-patch-id: cb8dc83683bbfe87fc85b8653adf90809df504c8
prerequisite-patch-id: 578bc74066d8b4aeb3738866f533427801e9c582
prerequisite-patch-id: 7420897047b867f06b7aa36aa88348120b20ae68
prerequisite-patch-id: fffa5e605619c04dc8ae448c1c5afb4c1218f727
prerequisite-patch-id: 6e043d95a4beca7aba21f556b283bb91e13babc6
prerequisite-patch-id: 0cfc95fab3cd546d69ae69712e703bf29f41f823
prerequisite-patch-id: e4339301a30b2b74d15a3c464e830d4a249c00ba
prerequisite-patch-id: 6bdfe60d57a470d885ac4d071f3b944a37b9d12d
prerequisite-patch-id: 2185f9a616a60a1e3e384fbd6965d69ad5423723
prerequisite-patch-id: 59c33786a60d9a808851a5c451b0dbd49fe164e3
prerequisite-patch-id: 8b24a7f5a6d02f2f651f1f2eb2373260b6b3e270
prerequisite-patch-id: 73b216d101941309391819dff489f0dbe58b866d
prerequisite-patch-id: 58cc64a6bbb6a32a5384ab27cbd0e8936321be4c
prerequisite-patch-id: e04fdc4c41517e72748caf4d6afb235340ac6fb8
prerequisite-patch-id: 0f528fa6bf2e60b2ff8a908f0e0faef60968438b
prerequisite-patch-id: 24a7f5df5b43b2afdd632053a7bc7cd5521af39f
prerequisite-patch-id: ec22f0e34c899022fd4452a7baaa606071ab6ab3
prerequisite-patch-id: 04de3390162e932908820dd27ffc1ff7df13aa12
prerequisite-patch-id: 6e960752f8ce9da3163f3d957dfb7ad6fc5465f2
prerequisite-patch-id: 29ab59d5b68a077aecf4e194f7b4116d98bbd6c6
prerequisite-patch-id: aba1d5fce4f888f836a770bf556e525db336a993
prerequisite-patch-id: 65bbba4a984f1569de7d886f2d7795d2663a095a
prerequisite-patch-id: ec03d67d6795918429ca53f0b1fcb26a0b59c911
prerequisite-patch-id: baf07805671b9ab8474ce47f70632da5725eff77
prerequisite-patch-id: c0cee8d7e1b9187a58f93a4defac9410304c6c90
prerequisite-patch-id: 6fd749dbb798392757a699968b0965c5c8111609
prerequisite-patch-id: 133117384da34e34c64a6ac0dc95357f6c6a07f4
prerequisite-patch-id: 50cdc40fc260dbeb68e395d3da218c496aa805f0
prerequisite-patch-id: b6d418ad21fa0399715a887e157b4ddab6a2cde6
prerequisite-patch-id: 16e1027694afafb53e4158f32945c64fcb1014d0
prerequisite-patch-id: 482483f683a9856fe1359d8f65f8a386065ee339
prerequisite-patch-id: 19a1b358385aca2321f65698920b6d02ed17143e
prerequisite-patch-id: c489f3c4fef05aafcce359675b091b6a9d8dca90
prerequisite-patch-id: 879ac16bb2a555e4e9e12956112a5692e1d840f6
prerequisite-patch-id: b338d019dd19a34a9cf55cfc72194106a9f91de5
prerequisite-patch-id: 18684287a5161b28c2392697e0abca95eccfd561
prerequisite-patch-id: 01d0e2babe94428838beb17f128c82a6def0ecb1
prerequisite-patch-id: 69653f737bd19940794215cf2366a453ef565c0e
prerequisite-patch-id: ca486c8f0d3a773de98520a889fdf45bed9ef343
prerequisite-patch-id: cc5ffd4dcb85c3d1ddc640eaefedcd82f52a53bc
prerequisite-patch-id: 8f300dfb433952e9bb54c368f184a139a915c66a
prerequisite-patch-id: 4883d32dbc5c805c78ce0ec3f53a0eb547e05491
prerequisite-patch-id: 5c25db4456f99e551f585d14526ed0e97b47b9e4
prerequisite-patch-id: 0d9728b34df1b3c1c720a98de3abf9bb3393e55d
prerequisite-patch-id: bb40df31e6d338483a66208f44c510754a5b8fe8
prerequisite-patch-id: d62f6ca353abf074a0f9727b79df4df94b8d30d9
prerequisite-patch-id: b24d1bfe8bd9f8d8b8a61a0f59d28d6372a3d1dd
prerequisite-patch-id: 99386010c70cd3ea3464ac2744e427ab7977d06d
prerequisite-patch-id: 993e30178f8aba1ac6524672e6efcc3ec5aff0d6
prerequisite-patch-id: 9660bcaa8d3c5562fef22b7596bd9e0d9b4ced9c
prerequisite-patch-id: ddfb64b123879001c0b67a596180ec9142564a7e
prerequisite-patch-id: c97a04e139f6ad4a8d272d66a4c943d526e4fbb5
prerequisite-patch-id: 6d2cb32ece5ff8af64f34b72d3d78e56f760243b
prerequisite-patch-id: 514f028b3bcc5adb4cb6294e76a21edfef6498c0
prerequisite-patch-id: 63daa829d98430b4f88d2f86df5bbfcb08f28189
prerequisite-patch-id: ad7334c5c07f372f569504b0193fc8624de67473
prerequisite-patch-id: 9740e8800160b5698b5d8d96d566b9832f468ed6
prerequisite-patch-id: d7216ecc328fd0412d89a3969038cd516d3026d1
prerequisite-patch-id: 355ed9e7ccc81e56f5ec0cebceb5a9609a9365c5
prerequisite-patch-id: db77570b291a999ae372f7c3c425fe959cc031c2
prerequisite-patch-id: 6be6b048862d6852cdddd15fb4d85be2e6b3b2f8
prerequisite-patch-id: f7ddd2ffad79ac8aacdd14e0c96129164eae7526
prerequisite-patch-id: af508b284082ffecebbf07a08aac210f47f8dc8b
prerequisite-patch-id: 77a32e65ebddfee3c875616a617d04c99bc0a5c5
prerequisite-patch-id: 9bad7c563a059706c8e87806756ef31a931d05e4
prerequisite-patch-id: 2106046d4e2f629ca2a91b778cfd1fa8466bb754
prerequisite-patch-id: 3a8a76c3a6d9d85f0357a3ba68abd6dcc4535b30
prerequisite-patch-id: 54132dd4ee8c366ca2639db6de595a68a2b4f983
prerequisite-patch-id: 366911d13ae65abe284e0d5f13d8909341dd6b48
prerequisite-patch-id: ac9d2d144390284582f67207b827d5da09b4a49e
prerequisite-patch-id: 2cd1692c8de7a928893b27c538e6a9e082bfd6ff
prerequisite-patch-id: f31c9053264a3331432bab072b426dd63d697075
prerequisite-patch-id: cbfe07a60bc7d5daa9212af41b62c7d6aadaa4ff
prerequisite-patch-id: 6e7b6ba993ed98f313c98181cb975d4f4b0bebcd
prerequisite-patch-id: 267356ddef87f8699be19d00649d46cd79112aa7
prerequisite-patch-id: 24f0b77785bb575f72d8dbc5918e5fa64aeb3507
prerequisite-patch-id: 35d6559059c298397b70958153e7100bbf3a45b5
prerequisite-patch-id: 09b5d3ebe76e91fd95ad47ef2b55b2d9231b2932
prerequisite-patch-id: 75c138e5d6c5d1b706c25a0dd85a192fc0a66f3c
prerequisite-patch-id: 058ec942bf71e95377746ce6bde3ade5a1087196
prerequisite-patch-id: 704cd58d503aaade5f0e5070ace89f7c5869e48a
prerequisite-patch-id: 086ad42cb120d24cccf0835df3d4b2f3ad321915
prerequisite-patch-id: a489d1cb4645e57c14e9326a239e63d5362a09b4
prerequisite-patch-id: e29f80f37bf883225101dec989abecdca1bb1278
prerequisite-patch-id: b6cdcc1b0a5e9a6cd7914c05450a38be5b4cdf30
prerequisite-patch-id: 6732fcbf769ea5c86201cafc6f060d243ef14e73
prerequisite-patch-id: 533dcca477250a071023c1dbe0f08c8b6251d202
prerequisite-patch-id: 63d694b053989c0e05fc1b2b15a5af8f8c1edbed
prerequisite-patch-id: 9ae203014980c2b0570f43782abdedcef7bbcab5
prerequisite-patch-id: d35b634f15b2162ee283ca4be368994d5d36116e
prerequisite-patch-id: 701cd36d4db5aa6323b5790539964db903456802
prerequisite-patch-id: 194e219c8475d7d526ef8179fb7ad3d00aa43e9c
prerequisite-patch-id: dc2fb2e0f984eb16bbfb95f6de43b4ee9267d1a5
prerequisite-patch-id: 3aa4040580c1e46a5c74e1c57278a5b415e2b83d
prerequisite-patch-id: 19ff657bc63bde0b141a455fc959a4f402355358
prerequisite-patch-id: a54bdcc772c0ccbd762cd6596e1c44dc69e5cbf4
prerequisite-patch-id: caf0d86cde1845f99e9e713fe42067b49ed64140
prerequisite-patch-id: c272f6d89092323d34d66719422cdb3d6b5da135
prerequisite-patch-id: ca6268171c639292cb63bbccbd34a2c648f3d746
prerequisite-patch-id: 83f38ee1d155ccaa31a567b897b903e34c64c621
prerequisite-patch-id: a399e89b33c9a1a67f587c4dc1a42480c880a0c0
prerequisite-patch-id: 73b85182853882af8c28eafd0d4668cabcf80113
prerequisite-patch-id: 35b384c192b570cb212767acaaf8b3e9b1ed2a0c
prerequisite-patch-id: f0301c1a5bbbbd25f947cefaf44995af769d382d
prerequisite-patch-id: 146784605373f7c567a41ce05a6e89f843153fc3
prerequisite-patch-id: 8153e6d4a82fc605720b5d3705b213fa414629b3
prerequisite-patch-id: ecfac2ad765b35bfd5d02ea6207e8b0baec76800
prerequisite-patch-id: 52f9ae84ddecfdddfe9ed102562db4f347e38c11
prerequisite-patch-id: 7499e0bc6bff4370dc594353569a52ffd784f935
prerequisite-patch-id: 0f924b9990b89aa0fc1cbacca1225ef8186b7258
prerequisite-patch-id: 434e698949cc127a01e3899642f79c9978414c10
prerequisite-patch-id: 41cac21d76775f3a0d8c1f2158f04d9f6d6272d4
prerequisite-patch-id: 62ca98ac3599df06d6756a8988b4e3f32a45fb18
prerequisite-patch-id: 0c8d4fbab38869bf8d66784e9a118b758e1c9511
prerequisite-patch-id: 1f367d15569d76dab30e654a97688e3bfed6d163
prerequisite-patch-id: d9aa2b04821d4183fa013444ba55b69e6d2e920e
prerequisite-patch-id: 95907e8507e8614ffe4de77e1c0aead9d0d99ee4
prerequisite-patch-id: 832f8e18ecb18be8606d59011c06cb283927ab3f
prerequisite-patch-id: 7b4c9542d19b7eb7c25375eaaa28ba51c940661f
prerequisite-patch-id: 31e80533a19648d5640c9771a67788f9516d988a
prerequisite-patch-id: 6b39ef36dec3ea0e1c9a7500ab66c80fbce05d34
prerequisite-patch-id: 224394d1978254de4fb87eb3e26b406dea1ae7ce
prerequisite-patch-id: d1c07e1de45a46499ebf37d9ed0149614d7d8a56
prerequisite-patch-id: bcf0165537301cb1db293c4ac408297731602717
prerequisite-patch-id: b0eeb476dfeb2098efe55de61aa3900e5ca7fb44
prerequisite-patch-id: a5a9405aae7e47d7422c4e50ce88ba9876d2741d
prerequisite-patch-id: e7e237a93a23507bb3f2976fc0454f8d577e34d1
prerequisite-patch-id: 1445a9ef1299f381c976380c75b0bad170bb1ee6
prerequisite-patch-id: 380b7f3d77861e8defa573d554a7bbaca4283ad1
prerequisite-patch-id: b385187eb134686df1c464b025b5ecf907286e32
prerequisite-patch-id: d9ad6ff3f956d8d282038cf80ca7432b417fd353
prerequisite-patch-id: ed5168e007529c9fa78a537c8b297d9e86aba272
prerequisite-patch-id: 90d0516af2a044422bbdd09dad12e71d79d1bbcb
prerequisite-patch-id: a4554ebfa4bbd751a59b9e61697817845b72f237
prerequisite-patch-id: ac28d0b47c74f8f772ce5dc8868c9644a7ad244e
prerequisite-patch-id: 4e7dd4a9288ef092781676639ed2c665bbd21b73
prerequisite-patch-id: 3a79d9b2d89158bfd7cd7606e69e57762506f3ef
prerequisite-patch-id: c23dd094e606cacff460eebb90bebbbfe845ffca
prerequisite-patch-id: 22e44143280398dbe0c5f769f797900b9e463ab0
prerequisite-patch-id: efdeb99c64d272bee23ab4714c6bd41e8a32d706
prerequisite-patch-id: ac4da8fbcf52a4d24b0e8b233f961445bfe1f733
prerequisite-patch-id: 37b1f92c1f924b4b7cb5e9e0a35bc1a76aaec39c
prerequisite-patch-id: 429baf9cca09fc9a67f9199d980155057779746c
prerequisite-patch-id: b159850b876a03a684b3d5ac4974b4f058d26b9b
prerequisite-patch-id: 208be661be27213f615694226666dbe9c3f72be2
prerequisite-patch-id: 974354203fa13640522e786fffae882439d73f5a
prerequisite-patch-id: f04cf6a84d0f8d0517089b7aca1b0e8d6df77e37
prerequisite-patch-id: cb47ea66ebfaa9ae1243ce94b3655feff388f14a
prerequisite-patch-id: 20c63becf38002aefb4bec6a6737e4b930582fe6
prerequisite-patch-id: 01da1c0ff7ff330ec3905c816f685a3351b644eb
prerequisite-patch-id: 87e25f951002b7713b57492f6e51dffbe72d8579
prerequisite-patch-id: 309836a3ba921e517ce97097a15952b3e7bcd86f
prerequisite-patch-id: de7fd4bb2982462d5b0c6873f782b98348c4ae1e
prerequisite-patch-id: c273f55c49aeae34f53af6b0ef50600e989b872a
prerequisite-patch-id: 76e44114f667b228957e2be00d0354030d40a5f3
prerequisite-patch-id: 26d004d455131faee1f072223b82e5e490b4f72d
prerequisite-patch-id: 808a1c1ce72b249031f3f2731873fde9e8fdde68
prerequisite-patch-id: 3840566df84ef2e3e5cf5d68700a8bca71321576
prerequisite-patch-id: 786e8ac121e7eaf0487d63426292a6ca74fafec6
prerequisite-patch-id: 6330c7e4bf2bf3bb75e74cf6cd3b41691ebf4a7a
prerequisite-patch-id: 2c70d8580bed066cf5f1b8a1cc7d945dfa9afd29
prerequisite-patch-id: 79753dec1f632bb1758dbbae6de4b848663bba2a
prerequisite-patch-id: ee2d289e818713c402d611c6980a1424a11bdc86
prerequisite-patch-id: 1f244a056ed1fed6cc0018675dae8be60a022cb4
prerequisite-patch-id: 160b4fd1d56989804169cc4291c93b11b993779c
prerequisite-patch-id: a25f018f987a6e2e5997fa7fcdd793bcc300c6dc
prerequisite-patch-id: 47ff94c47134dade4cdcb9c9a595538c32b9cde7
prerequisite-patch-id: 38b186addeec70c5ca8d3da880207eee88c29ad1
prerequisite-patch-id: 94dd227c99627b657a81560d274d0fb79717daf8
prerequisite-patch-id: 03bbb98a5a37987ab0a97757c0a6be3dd56b0d11
prerequisite-patch-id: 0fd9f7e53bb0cf08076d2bcd63d774a443711d50
prerequisite-patch-id: 86c70fff9573645993006414d90d7bc8dabcf12c
prerequisite-patch-id: c16fb6b39350f7317052243602b1fadd95119225
prerequisite-patch-id: 2fec1360fe760304400f616c9c05207ad3ef7d0d
prerequisite-patch-id: a19ad5649e3e279c2157944f45b62d38e2041a6a
prerequisite-patch-id: 03112b2eba760a44f94f227c61d0ec0580550e2f
prerequisite-patch-id: e78cdc823498f878ade18a9ba4f77d5887b532c4
prerequisite-patch-id: 091291a837ce4ddcf3df431a5ba539ec9dec3823
prerequisite-patch-id: 19c96abd6a59569e785852bedbd9b2ec395bdbf3
prerequisite-patch-id: e66002d09887e2a42784628cedf95c91e47e5a2f
prerequisite-patch-id: 7c593b1e7db25721df60a03b3468943ac27cb223
prerequisite-patch-id: a10c54f9f658aad67b494cf1d4cbadf4cb6265b4
prerequisite-patch-id: 69ae9bd09317494a0e0ec10b2e828341139e6cb7
prerequisite-patch-id: c95815f35c87fb820aeefde5ad40ab6f1e2f82f2
prerequisite-patch-id: 546deb920cc4c002a8074497e4c34f846e34d1d1
prerequisite-patch-id: fd2cb946270481bb15c8eabbcd1620feca2e3ed1
prerequisite-patch-id: 5cf890f73440fcc20d044cb2e0db90780ceca314
prerequisite-patch-id: c3d7403db92408659d70146dd846bc263e7a3309
prerequisite-patch-id: b8fb9bdba4422da86c3ae47ba083731d0cf3b18b
prerequisite-patch-id: 8fd968a23e41fa3a01312a54203543e00d2ddb8f
prerequisite-patch-id: 4d215eb462be6fa6b587c4c3fcac4a9b38961d9e
prerequisite-patch-id: ead723dd1c06261ccee334370a3cc9821f737405
prerequisite-patch-id: 1949c8bd56391a67fc1a954397ad35a98a25ee54
prerequisite-patch-id: 010b8019fa7cfa22a252a04ba3b8e102a2ea5767
prerequisite-patch-id: 7d79fd0bb020958a87ef8496bef2f542964f2983
prerequisite-patch-id: dc4fac506b0e37df36beb0247455f186ed93e585
prerequisite-patch-id: 597ed2f079b028b16438da36068c202572405152
prerequisite-patch-id: 8c86606e267fea92f792f9cd0516bf104489b645
prerequisite-patch-id: f04fd0e31781284a61d1470a741c63c750cd9dcf
prerequisite-patch-id: 441f7fe2d4c1d52ee42a996cc1a79c113758b9cb
prerequisite-patch-id: 8320d35628e484d0dfaf3bc51807b4fd95296813
prerequisite-patch-id: d5fa9628087fee9d7bbbe2f77018866f34fe7e22
prerequisite-patch-id: 160afd02a8d2379437b5ed506c636007fd786c05
prerequisite-patch-id: b1d7de8cc625689a1c088bd5e39b0eb45fa45160
prerequisite-patch-id: 821f3a07ea2fb0bc7413e73f3deca3569112bc65
prerequisite-patch-id: d1560e3ce5f3ef8ed1d87dd066eee4551dafa436
prerequisite-patch-id: ba05c5b1fbfbc841000dc9e1b9a1207de31e4217
prerequisite-patch-id: ad6edd6c4cb524dc6471d6a73e7e8dbab844fbea
prerequisite-patch-id: 1d5e95f95a42612b37c990831e8d15a8d6a0f9fe
prerequisite-patch-id: 3efeb3ad555613b800b59b3a3b950932cddc4b17
prerequisite-patch-id: 71b6c428bd9365ff678f2f121ed57ecf58c490d7
prerequisite-patch-id: 140edd4a82ca6508327273125586a6f6cd6f6bc7
prerequisite-patch-id: 2747c0125744837abe04669d1e475a6fc759e7a4
prerequisite-patch-id: 5a99a6eb0dc292d1b615d6986a7f766a4d7b105e
prerequisite-patch-id: 886515b71761c53cda21b9de646b5dfda1aeec37
prerequisite-patch-id: 5db8240ac4ff27591998434d56c76d96d517fa9a
prerequisite-patch-id: 60246bfae407e6ca7ce65151b22f1f74a5f9b5fd
prerequisite-patch-id: 6ea1dee66591e0783ef057f033a5525c09e6ea51
prerequisite-patch-id: 328c201bea40d0a523178cccc7082791d15d7270
prerequisite-patch-id: 8b008db6c5cf373452f959b14a60860586c67aea
prerequisite-patch-id: 2a5b1576791888e122c153837d10cdc9392ee1e1
prerequisite-patch-id: bcf137151decc2a91671eb5858f1be61fd87ede2
prerequisite-patch-id: 328b20bcf939162e529338685c7a94868052445b
prerequisite-patch-id: ecf4f87024af6bc70257c21f591b2daeac717c9a
prerequisite-patch-id: a2008ae827074956cc741374bcfe42c669bffed2
prerequisite-patch-id: fa76f49ae4ad123bab00abcea7266102ccf0253c
prerequisite-patch-id: c112febfed25da3fab539255d8e187cf54aced44
prerequisite-patch-id: bfd14d0ba046eb9f30d7c1ff4dbb4436451cb245
prerequisite-patch-id: fe5c4261be013a0b90f1a5ab2f4c155f0184ade9
prerequisite-patch-id: a5116502a165c863dd7fe834da1686b03e279013
prerequisite-patch-id: 6edb8696008a1a55804bd7a582f7d5737041e593
prerequisite-patch-id: 2fafd79e72164ec18fae79035e3a29cdcc65930e
prerequisite-patch-id: 25618425ad9ec89f4a765cca60333234874231be
prerequisite-patch-id: 30bb8b108bd22390b34925df78367bfd41b473a7
prerequisite-patch-id: 9002ce56efb57ede413c48eb9d9c6cd0108cd04f
prerequisite-patch-id: 1d2e651e489f6ed0599e36126608757218b23b38
prerequisite-patch-id: d36d454cc7e7d294d2c4011bfea3437f25a3841a
prerequisite-patch-id: ed32679ed5def30af46deb5a400522b5be77165e
prerequisite-patch-id: 7a55931134ee129f47676db9f16649ab0301ab6f
prerequisite-patch-id: c9f846c540053f958248d7c091d1f7caa797b4bd
prerequisite-patch-id: ceab0ac9863961c5af4710c36a0f050db8b00b95
prerequisite-patch-id: 6e53dae3abbbbc42c75bf55f94448da03bc3b2e7
prerequisite-patch-id: 8a5c95099ad817ea0b95389c5e882e79d4c59c8e
prerequisite-patch-id: e36be8628b4bea9d488117c0de1149d57652e378
prerequisite-patch-id: f35e38b4c6d95846b8137999d7af99e394a4db3a
prerequisite-patch-id: 4497a205fb4e01dc3289fcae8a16c34bf2e566b6
prerequisite-patch-id: 861ac42c9eb7ca17298c471e8fa17ae48222f9a7
prerequisite-patch-id: f064dc932127938448abfe51fd546d15b7d79f10
prerequisite-patch-id: 58c38bb0a23ee9977d70f09d0009651e474879a2
prerequisite-patch-id: 5601f90ff2f82d22ef55b246fafef422bb17083d
prerequisite-patch-id: 03e9f0826265f6f58e4d719a552bdccadc8e8904
prerequisite-patch-id: 21d345ae6a360770540e2c512dab285bbd38646c
prerequisite-patch-id: 5f46ea6039b02fa1aa50f8c11d410d308dad84fa
prerequisite-patch-id: cf0529c71496e6849e12610636e99ad9ba0c4a5a
prerequisite-patch-id: 32b516ff6040d2a98f4ed0fa103fd2c129aaafbb
prerequisite-patch-id: 9afe6e9a5061a9556ad51bfee634270d5ac54221
prerequisite-patch-id: aed1057d52b68b047915f859a32e8d5b467b9a38
prerequisite-patch-id: 0f9646350e98bde2ce384e6e6b2bce9c7d835d22
prerequisite-patch-id: 414cc60778e9a99ec0e5f538842d71e5ff0a5dd6
prerequisite-patch-id: 20c29cbfabdbbca3202c88149f8416e29d0b5d7d
prerequisite-patch-id: 719b03f908b54a2acbf4b8f81592e39a48bf9715
prerequisite-patch-id: 78304d8048de7a3eaca4bcff4735e69c99183383
prerequisite-patch-id: b0f7ba5a7f7ba4d2a6cf47ef4ed4845dc437f316
prerequisite-patch-id: 16044a004d703a164935ca07ce43e87d7f2348e4
prerequisite-patch-id: 0c9877e3b7196c19b7241a3c4d0b4a77f0799f8b
prerequisite-patch-id: ec843e64246a39f686d7cdbc2a52f19d6d101426
prerequisite-patch-id: d19a54a15997805077a2ea5b3a5dadaa12c4e216
prerequisite-patch-id: 5d2c846b3fcd02e45011bf086c4d5fbf717b95ea
prerequisite-patch-id: 0ffe421f70200f387c39feb455ea14bf5c279a63
prerequisite-patch-id: 4492ec7dc43289cd0fe3754f9f422e10b99c460b
prerequisite-patch-id: 48ce57c5b978f8b97d770ed4b9bdee319f43549e
prerequisite-patch-id: 4e36efc19b01cefdc2cea660d177883ecd7ed363
prerequisite-patch-id: f3178a85966db5396d5c644d9024f534da74ca0a
prerequisite-patch-id: f105a86dab3c8fb94c6a52b741de6579c576b3e0
prerequisite-patch-id: a068d1ab592a0b37caf93a6a1cf8621c57d21c96
prerequisite-patch-id: 14b496b48d954528fc6e422349750a3f29835b70
prerequisite-patch-id: 38a35c318a3b838d9271420a2d1f048557bcbd91
prerequisite-patch-id: 7b96f0ce0bcb1ddd279daba4cc90ae1b28517aa6
prerequisite-patch-id: 3a048acb502e6130025d0127d1a470822b00d653
prerequisite-patch-id: bc82d684ea609abc4ed92724d21d584ad050704e
prerequisite-patch-id: 9ef2bc9f4a4f98cffb6b4fc9cb4fd1c04757208b
prerequisite-patch-id: c5e90cbbfdc4532156e7a21e9e21ee4f1f153db0
prerequisite-patch-id: 5b9395420ea6b809b4101d22dfb5878ee3784f5f
prerequisite-patch-id: 0234194cbc73586b13790aafda3f7b6b5d6d1552
prerequisite-patch-id: 4782df8e0887da10043b18ef7e0fa1a8faf7e816
prerequisite-patch-id: 940f18d7d0dc6cd4c94cf8f0fa82f01ebd5176da
prerequisite-patch-id: 49e983c867743009102a36c6bd50298da066d050
prerequisite-patch-id: b98feb0d2c9dcb4cc249dcdec90cd33cb0301e8b
prerequisite-patch-id: 185086c8bd2f437350ff693e2cfda773c39aeadf
prerequisite-patch-id: 9ec439cb4a4d427a5ac71949b5f91f69e489bec4
prerequisite-patch-id: 7a1b91d760e5345f6a9a832f58380de4909da7b5
prerequisite-patch-id: ce63fbe4f34af574fd95f3b492633ecdd001297a
prerequisite-patch-id: ed90f52618e11a5b487bc882d6180056c4bc9285
prerequisite-patch-id: eca602e47480c80a4b8f233c93ba389e8149f086
prerequisite-patch-id: 427026b649de6e302a72f2c28c87df947b7a5984
prerequisite-patch-id: 7798b7b9d020d7ae94fd90ed99fed84e1e912b5d
prerequisite-patch-id: 1b778324d2d7785c0b111bfb79065c00f262bf94
prerequisite-patch-id: 74a444bb48d785fe0e252bbc5e612a2260545530
prerequisite-patch-id: dacb071e61001cbec22f9e67b76a1364bc1bb001
prerequisite-patch-id: 178cd05739824bbd100e0a1c514a9e64f196b5c2
prerequisite-patch-id: 470bc3d0c6eeb841d9c8e4dab478b6d777816a49
prerequisite-patch-id: fc4ee00ea7140f24395c6356f2a9066e82698a86
prerequisite-patch-id: 7208c7524a00a3e3ac7ef06f6d8d480e2e463a04
prerequisite-patch-id: 65f6426bfa1675384fa39f93d4b3ecd6af1448c5
prerequisite-patch-id: a563de488c59980e1c72644471d438e304520291
prerequisite-patch-id: 14c0520fa5afe8f0ca642acd5b6b50002eb8391c
prerequisite-patch-id: f07ac84261c59c5f7219eee9056d65be5717f8b5
prerequisite-patch-id: a0fb21b3ac691af146b90378e8246f1e4c08aae1
prerequisite-patch-id: f67d517a6f644133e68de20ddab31782d0ad1f12
prerequisite-patch-id: 46621789deed8abacf7e22ccb79d0c436276c849
prerequisite-patch-id: 3351ac56484bbedb2b466d7bb6026d1237d3fe5a
prerequisite-patch-id: ab7fe4b80769aaaca600eed173ac81a265d3470f
prerequisite-patch-id: 6aac114fd181584d4fdfa0720b26e8342aea6a12
prerequisite-patch-id: e5cfc9b20a64865985024891d30cda57ec1ca480
prerequisite-patch-id: e55bffaff140ea443ee8d88cab829d878202592e
prerequisite-patch-id: 15e3a2158d9881392990ba9d09d1b6a20f535f56
prerequisite-patch-id: c8ecb5470b17146668b3a442a34b1ef398d26f2d
prerequisite-patch-id: 8acdddd4fa007833b111b99693e5fbad52960776
prerequisite-patch-id: 345adb6effe95cfe4b89cbdfb59162c256ecc162
prerequisite-patch-id: e38ea36f43054816c9382c0c2ae4f7605acfc4ac
prerequisite-patch-id: 53c25242c8012eef21ed2728dab9e7cdea736b20
prerequisite-patch-id: 5ec2d0bd6e809ec11613351d251cc2fb287dab4c
prerequisite-patch-id: bc69316a878ce4784caa4850d5a5751d0c8775a5
prerequisite-patch-id: 9923067ac841cbced1f07ac937946a11e6cf3d6a
prerequisite-patch-id: 73600333424b3a49b1b8f57558bfdb884da606ab
prerequisite-patch-id: 8b5e5a34953182b051acb321bb6ad1f87e9b880d
prerequisite-patch-id: dbd2bdbf44a43fb1ca5c487f058dafd9d1e3f8fc
prerequisite-patch-id: 2e3f36e471fd5f5839638e0c4929530046c7023e
prerequisite-patch-id: 12b7f78d177ad86cee65c7d50289d73868ff1b30
prerequisite-patch-id: d0bf04d29f7db05854f854c15e9d1f16674f1479
prerequisite-patch-id: 737502a73da8eb6ee8460b57ed940b59cdb0653c
prerequisite-patch-id: 999b14ac4f95fbecfa6aa654c131d87c6fb3539f
prerequisite-patch-id: c05218e0f17a16a29d3bd8ac69e8230355e31a95
prerequisite-patch-id: dbdc83883610a3dd384dc7e2b7226da45f4a120f
prerequisite-patch-id: c1b5acc1e3fa2474e9889157d7fa9f3f3c59785f
prerequisite-patch-id: dd818562436228a5b50c7ed1936540b4d9e06cf8
prerequisite-patch-id: 005d8246364813b07a0f9deb9218074d64a7f7af
prerequisite-patch-id: 6adc8de26194f3c3fff85cb5473631821ef7b7e5
prerequisite-patch-id: d460b59d4435b001e42c6e643181604af6fc4811
prerequisite-patch-id: 12641ef45b278edef4d5bc056999fdd8187b3188
prerequisite-patch-id: 97d74b36a63f5fe206c7b628d16c4ba5c973a122
prerequisite-patch-id: c17a4fa88779716bbaa2877384d20bc6ec6fb504
prerequisite-patch-id: 8c23dd9a7554f7d82c11bc0a5e781462e62c0d27
prerequisite-patch-id: 165b0bc89027d235969c7eb8847691f727b56927
prerequisite-patch-id: 626d534cd5517cd439c5c3f36fe03f7f9f583a50
prerequisite-patch-id: 339d144044ce3ce7233e96ca92505fa65fa97224
prerequisite-patch-id: b8c6b223f730b8aed7c11af0c85e984f4db2e33b
prerequisite-patch-id: 972324b2bcda1cb4b01363b6dfb1d4bbb89df168
prerequisite-patch-id: 51865557a9dde529e5aa4815956f2ef9aa27fd7f
prerequisite-patch-id: 9dae2d934ddb59769ae03034ccf5abde92df0d9a
prerequisite-patch-id: 85678a4b69850b141148f00dc8040e290a2dee7f
prerequisite-patch-id: d564f79df2499c292de7f5736d7e77e3a9401b56
prerequisite-patch-id: 5160e4562afafcaa1fb10d582a0854e1a1fab7ba
prerequisite-patch-id: 87db9e16e8a3607d3d33fe04d4bf44ef0338fa96
prerequisite-patch-id: 4a4c1e4bb7bc57884b3304efa3e90b21a03df5bc
prerequisite-patch-id: 925e8f8321c93c8b34e49757a969f5db9b8d4482
prerequisite-patch-id: 9c85cee17dd8370d453947ac14c57f83c391e791
prerequisite-patch-id: 102118bb9c2fe918a4184bab637ab066a27cb38a
prerequisite-patch-id: 31baacdb7a5aafaa019d221e2381a930d431b868
prerequisite-patch-id: 6e70e5711f5b6cf52d80c0e0778d0bd0bc25a73d
prerequisite-patch-id: 7d3f152a3bec02894257fe60a8d00739179d0474
prerequisite-patch-id: 7859f994e54dadb3473d0fa6155c8e078fb36992
prerequisite-patch-id: 1e590708438349f5b8581fcb70100d082046d988
prerequisite-patch-id: 356c353fa8811863cbed6542a5bce0e793708a96
prerequisite-patch-id: 67441dcc717b842eeb2f435b7fb5a0c9c664a893
prerequisite-patch-id: 3d31925673fcd9c38e4b85df7e093bac67e1a1a5
prerequisite-patch-id: ec5b2e7c99ceb39294b5ef2a716e330b29f1320d
prerequisite-patch-id: f2ab3ff1881df4f1a34055dcefa829b05a0d8363
prerequisite-patch-id: 496b702c0db1cd0b0d8e94c6d3f878eeff9399be
prerequisite-patch-id: f69fccd9d3b2cdbe93a644b05b6b459503ac7327
prerequisite-patch-id: bb56bd4b378e871c99a0e0d5938d853f0d7070a8
prerequisite-patch-id: b33ba8774adde75640cdce7f2c0562a6141d655e
prerequisite-patch-id: 8438bb396c460fc0308a30de8eb2fd087743f3a7
prerequisite-patch-id: f6a52858b668807d92673d686b1c119f1194cf44
prerequisite-patch-id: b18c602406cff1bec512c1d2eae2779f786f4c27
prerequisite-patch-id: e243f924e64cb747b4028f455074e7882508e397
prerequisite-patch-id: 8e1213c45a052351361f23d8eb51882f5e62a1b2
prerequisite-patch-id: 888776d3f0172b55483cab2bd2f96d989bbaa2d1
prerequisite-patch-id: a635e6097970b02c576e487086174e94880c7be4
prerequisite-patch-id: 0f9998aefe84180c713ec54fb90c1cd577a26e33
prerequisite-patch-id: 3f97b2683ad5a1a6cf906cc86b7e98f60ae6fe41
prerequisite-patch-id: 73bfa161559a51ff0ce82bdcad2c4a24bce936d2
prerequisite-patch-id: d0691f0f8dbb52ac718c376890c334c5c482123f
prerequisite-patch-id: 363b9d5a5874c8e0504010f0c8e0189395159d56
prerequisite-patch-id: 7f7d7c39826d6d8aa57d239fe348a9eb4ba05f4e
prerequisite-patch-id: ccc59689c40b2de490c14dd431118c251248e08b
prerequisite-patch-id: ef857b92066dd2bc6993ea82516388d521d90c43
prerequisite-patch-id: 1f9e82b0a9b1c8898280ee69f170464a7ee92755
prerequisite-patch-id: cf3188ac558ce4c076730c6c0dfa3754d8586702
prerequisite-patch-id: fe3922050446876b2603f79e97db78a7a1d1bb8b
prerequisite-patch-id: 6c2b580c9ac5a987e2f00726327ee531121631fe
prerequisite-patch-id: 8d5e00557cff6a38c4247fcdc1ef5b3a94e2015a
prerequisite-patch-id: 0aa070dd114ecd0305e3baa68e593864d2e4d43d
prerequisite-patch-id: 0d31214f83be52e5c4b1e272714154aa35591894
prerequisite-patch-id: 7e53c43a5b6384e22bdf73689b789ef232848006
prerequisite-patch-id: 840a47cef411ec9fd3b6886d8705f0d8ecc74e7f
prerequisite-patch-id: 6a49b852d5ded8f64620696bb55c3768d2862d86
prerequisite-patch-id: 268680ef33ee07a4f785bf57a3a02e007cbad311
prerequisite-patch-id: 71b93d05295c5eb70ecf381cd33cc278f2ee2977
prerequisite-patch-id: 2fb0bc694ed1973d62479d78ce1c42d00a162235
prerequisite-patch-id: 341927b8055f7ab68f6274c473e5a802aae372a7
prerequisite-patch-id: bd98b7e52b3ff9baf3f8c6c6f6612286621cbbde
prerequisite-patch-id: 13757bf10bc15a185ebb59faebac1f30c948ec87
prerequisite-patch-id: bb97aa3a104648513aff6d55626021f42bb36b1f
prerequisite-patch-id: 37169f7337111467c957ebaf8d19bc6317f1db88
prerequisite-patch-id: 4c9185de2a7da54ecb6220067f83d87ea3dbbde8
prerequisite-patch-id: 2714b843ef71725532044cef2caab8e29e0016ad
prerequisite-patch-id: 0f082af948ae04ddb81788db1622c2437afdb442
prerequisite-patch-id: e79f0f40093971717ec65edb2a570ac4684eff7a
prerequisite-patch-id: 87f145cc25bc38765bdfdce5ee5e2f9803cfaf09
prerequisite-patch-id: 7fce4ad4b23d8638a2f57191c1e06cfb9c0ce167
prerequisite-patch-id: ce28f489cd5e5ee80e0f5636a183963dffce1338
prerequisite-patch-id: 941d86fa2d4c08ec19eb6509369715e4004a8dc6
prerequisite-patch-id: 76944c9c4cc7f272f3f81e123559051b3327ad5b
prerequisite-patch-id: ae153ff1c1e51161b49c14d664cce5ac64ef03b0
prerequisite-patch-id: 27ed0f500e91e8dd69ba8fc4a84bf7538a4506f1
prerequisite-patch-id: 0ec3f36380ee924c15b3075513b828646500e187
prerequisite-patch-id: 9bc515416b38387d5d68dc5c919a42f513126e93
prerequisite-patch-id: f30f7f8ccce4c0120116911c8855f95743af9b0d
prerequisite-patch-id: 94215027f463b3e236387feb5f04f0a6f2007664
prerequisite-patch-id: ed75e6c8f51ea4798f764bd195be5e4046b45f47
prerequisite-patch-id: 477acaf9e5f6365a2ec18c2899f656359e4151d3
prerequisite-patch-id: 073e02562eea790c4c9a21f11fbeb56af778e517
prerequisite-patch-id: a913b7b46be568fc038ced376efdb21c2565829a
prerequisite-patch-id: e77a17ff70acccb3148a4d75a7a34c806e6f9510
prerequisite-patch-id: 5028a937e4594ebe82c8beb17afd3807a3ad172f
prerequisite-patch-id: 17a21207eb1131f55e438a959e2e2cab4ba52d0b
prerequisite-patch-id: 84c70e1604732d79743676757f883aac881e43be
prerequisite-patch-id: 3c4d0742e934d74065393b2eac44e83e8647965b
prerequisite-patch-id: 7fb83273b23be6d92ea10139b412cc0bdae5b580
prerequisite-patch-id: ce155b77e8a135ca095154fce7ac14d73a04c3ea
prerequisite-patch-id: 3943864610d262dc5489dca4103ad00c9fca5be2
prerequisite-patch-id: 23f43de4c1063ffe809eb98044d67bc94ecefbfe
prerequisite-patch-id: ba2c75d5226908e2ca81629354564871d1042ee1
prerequisite-patch-id: 3bc41ce39efc73c160f7e440c8cf2ea5811adee3
prerequisite-patch-id: 6004b8a969285354083777a9a16c164de11e1205
prerequisite-patch-id: a6cbafe45bfd5a699efeb728f9c743dcef403b59
prerequisite-patch-id: 413fd29705a724a2547d47715c4101cbe1037273
prerequisite-patch-id: df395954d7ed9f0badd69f71a7894d1776c95348
prerequisite-patch-id: b79777a6c7ba771588c257473d81a89930179fdb
prerequisite-patch-id: 97c4fe5e5dbad8ba6833dfc3c96d5f1b6c35a75d
prerequisite-patch-id: b3152f723666de75de06090963fb805e359d3d25
prerequisite-patch-id: 8a60b67b7a76f2cd5f570009a30f0c70b70a484c
prerequisite-patch-id: 573acbea68f9cbc7e0a70b06a86ce77dc7939b9e
prerequisite-patch-id: aa5f9d7a3552c2a4849da6e374586859b235a67a
prerequisite-patch-id: c708f9bbe1e95fc05782f0ca7f5e27759c145cd7
prerequisite-patch-id: 66f57bbdcd917fccdfe9d86f1948a5092f9cb0df
prerequisite-patch-id: 392d63227a51f00f5846a6fdb62670f536afed83
prerequisite-patch-id: 9878c05af9b0e344f7a99eab671b6c60d25ae94e
prerequisite-patch-id: f9b1cca98a3875d65de39cde47a71d70be012f3a
prerequisite-patch-id: 97b8a9a97645cae5a6cb737347a42b576fec9afa
prerequisite-patch-id: 190410487c8f8eab312112f4786500d0605de774
prerequisite-patch-id: 72a10704168f30fec5e8dee974cf581d1ba40595
prerequisite-patch-id: fbb3d4228185c917d3c553d090d445720567d9d0
prerequisite-patch-id: e0b4e891877def384e3c634d50423ab7ec6b19a1
prerequisite-patch-id: f02535e54f742629f92e9583d90a259422184f48
prerequisite-patch-id: c7d532dda81917a8438bafacd26b742afc48358b
prerequisite-patch-id: 2eeb9e301de8f1552144129a9a3713236036715d
prerequisite-patch-id: 1bf2a9c98dea9bdd5cad5485e4fe27c222664de7
prerequisite-patch-id: 520b36b605d5dd170daa5b90700358fbcf43b1cc
prerequisite-patch-id: 4f8f59516adaf57314808eb077fadb21c0ffbc9c
prerequisite-patch-id: 37e57c0bf5bdb319779ebcf1d80b8584cfa99246
prerequisite-patch-id: 35c0513eaef6846a2389827e89e12632e60ffaee
prerequisite-patch-id: 8d2717331b06e9bf5572e4d1cb0811e9b5abb094
prerequisite-patch-id: 73a89368c6f9c05b684540c5d18b3d9ac384db7c
prerequisite-patch-id: 49f279a0be856ccebe4de4436dbc3d76ce26b3d6
prerequisite-patch-id: 558895d5a7a73285ef9d0b84982ac5a67789bddb
prerequisite-patch-id: 22d4aad9c9b6bac523708ebb4748e6750023ebbc
prerequisite-patch-id: 2e976d968533b59537c1498076ddc4bbef084a36
prerequisite-patch-id: 9c3bd903b99985444dd0ef999c6da089222c083a
prerequisite-patch-id: 9006ef3b23d006bed0b462ef667a4607b2fa4239
prerequisite-patch-id: 2cbdc21f773c5a7701fc23eacf71fd1337a41d61
prerequisite-patch-id: 46c5db7ca7c41bc200e3c0ec622c0c3090c9dd50
prerequisite-patch-id: 4609040c2e608059be2881f05f5c278ce0ea9e57
prerequisite-patch-id: 79f6d691c55de5a38b6077460698b1a654bfdb3a
prerequisite-patch-id: 16c48f4858b30017448d96a696720c5644a52d80
prerequisite-patch-id: bf1d8338f841c6f27a572982f376ebfd11f615bd
prerequisite-patch-id: dbe5cca12b6b524f473c4ea711e5052925ae8841
prerequisite-patch-id: 368e2d1d3fc55414846130350d9436c673cc0266
prerequisite-patch-id: 541a13b089e5ff0017098343672cf22a99c79af0
prerequisite-patch-id: 0d75a965617998a10ebb00deb6d9f67a753fae4a
prerequisite-patch-id: b0e4981039e36bb2f64950d8c7a4eba8a9c464c4
prerequisite-patch-id: 04cf36e6559c52660a14c9a567785c6f44d1c454
prerequisite-patch-id: ff16593d3bfbef83fd28b5d6a2b4bac3e3b0ab98
prerequisite-patch-id: 782cca1dc6832fac654e50aab8f741b67afa4632
prerequisite-patch-id: 08ab09e8335194370913cf2646adfed52510f928
prerequisite-patch-id: 963268ab238a8830b2f38b5bfe70e58eeb43dd48
prerequisite-patch-id: b49d5e9f0e3c301339caf773978e7e41b9f3a683
prerequisite-patch-id: 0a39c48737ded46c3899f9d4ba4124440dc7551f
prerequisite-patch-id: 943ea882d101f0380312469a1991e34f343e96fb
prerequisite-patch-id: 0255f2fef18b3a646129e9accc0949a5297f33bf
prerequisite-patch-id: b1cc3d50c1f4fbeae8864e6f7a94ed9a9a4f5f8c
prerequisite-patch-id: a736954767d8e3c387f148bcaa2f370276d80491
prerequisite-patch-id: 3d86a046ae35be5929dc36c42544007413a4dee9
prerequisite-patch-id: 6e1d286fec14ab4f548cdde93d5853b320ee1be3
prerequisite-patch-id: 84ada6d19bdb42815af58b6d466b9529b12f8f07
prerequisite-patch-id: 19eba2cdcc75db1ddd98a4b0cc4d07c2c0abff70
prerequisite-patch-id: 13abb7b7c0ab15bceb870d7c70d4926ad32284cc
prerequisite-patch-id: 1575c0fb08a5f8a5e42269ff55782cc62db51fa3
prerequisite-patch-id: 18ebb5c66b0daf59ae2267c3de218b5db3ed5021
prerequisite-patch-id: 3454077b3eb15dac373283a95b66be38b17ff29e
prerequisite-patch-id: 8bc7d64e342c0c1e7ba18359da59407fabc83571
prerequisite-patch-id: c222f02c3919ec5b43e4236fc790b607d07931cb
prerequisite-patch-id: 5badab4229793529dcc83b84d1e047c1486fe9c4
prerequisite-patch-id: 5aec3b15e02d64fbc736d54d20fb4a11eb9f510f
prerequisite-patch-id: 7154f75b5edd2c2374ac80d59f09917e6f6860bd
prerequisite-patch-id: 97bac6467a9672ee625425138c322fb33aee060b
prerequisite-patch-id: bc0ebf35976a6d9ddcdbe38940f7fa1d54c3d742
prerequisite-patch-id: 947c68380e5cd2ca070340072c883bac7e476541
prerequisite-patch-id: 11a01cb3e7bab68ea42d50186ff26be21dff25cc
prerequisite-patch-id: ea64ff857defd49aabf0b7c7e2c1c1f166555486
prerequisite-patch-id: dd9acd81a03e036d53c2daa709ac8c3cff63d845
prerequisite-patch-id: 5f65ea1c2851d5cb9a5f52339e2eb8b91f24f76e
prerequisite-patch-id: 33dde40d0c2eb4d28f8401e3cae089ce82a0d121
prerequisite-patch-id: 992c07ac90fce344bef64d543f128ce678e8fc16
prerequisite-patch-id: 5920f788b21baeac0a5dd6c6c614f5bc2ec08f4f
prerequisite-patch-id: 6683ff76e348636bc277af2b2d9020d92284ca40
prerequisite-patch-id: 1132eb146fabb4fade7bff19f1128c18aab0db03
prerequisite-patch-id: 2d926aee82bae3f4ed6de93f400988edc4bf6258
prerequisite-patch-id: ebcae5febc939b73f92eb89291c71064436f535d
prerequisite-patch-id: 254b1d38636067398dd3f2acf21934290c6c4084
prerequisite-patch-id: 993faea8b3fd695b20aca986c4fa9d4da7e0eb1f
prerequisite-patch-id: 98444c284cae56acc70ab564dc9ad8f31655c9c2
prerequisite-patch-id: d713a9e1e33702f892af24238a10af6eefb0792b
prerequisite-patch-id: 2e6d0a899d6efbca1f5eb8dad1e2ad21edd055ef
prerequisite-patch-id: a8961edba6236acfd003572544b4f542fab49c6b
prerequisite-patch-id: 88dcbbb73f963181854ed06f3db3833778941df6
prerequisite-patch-id: 53acab860f5e3e3dae85bf6b6aaf870d9f8faa4c
prerequisite-patch-id: 757bd1fddd060825b7e4fae6163bcf38077d789d
prerequisite-patch-id: b81217bb998bf2747de8cea70178c50b37b9a312
prerequisite-patch-id: 9569f222c207e0067e8871ee272d02fb502b5cc2
prerequisite-patch-id: 96ae27b500d61b1f7c6bed90e7c7636e8a14d9f9
prerequisite-patch-id: ab76ba0870ef3b3f4a92c1a5fa87dc43739dce01
prerequisite-patch-id: 7dffe66b01cf9260e0ff64687ed47603935c032a
prerequisite-patch-id: 9552db3a000d0cf25f05f2dc31a9e8e64d0928a2
prerequisite-patch-id: 51884ed0a8ca4428a11e09f1888dcf5f4d7fa09f
prerequisite-patch-id: a037db93abfca1ab70d50a50d00ed797c639587b
prerequisite-patch-id: ff85fba6e4f01dd4b9c68787e6721214dcfa9771
prerequisite-patch-id: b484e94f5c8024e5398bfcd9fee441edd2c872ca
prerequisite-patch-id: 4d45179086451786a9601e52d20fe921a5555982
prerequisite-patch-id: cc8a71337279939bc5c8180203bd80a95f672ea4
prerequisite-patch-id: 68c318d5ccc6a61ebb2b77be4ffca51bced51ac0
prerequisite-patch-id: ea291c80efe51f832010e42b2705a4ad9dd37a73
prerequisite-patch-id: 63ad0b6f15e617cc0d873411a2fd6d20f34320fa
prerequisite-patch-id: f9fd6e0d2ce0f358dbd3ac4ba4131d7964eb65bb
prerequisite-patch-id: 83ad55b96d2eb5eabb6e664c6dbff26b7edf23fa
prerequisite-patch-id: 1471de3f433528247c659d7fb121fd16909c7b7d
prerequisite-patch-id: 1e29b992c3b43aca57378283c455480faf233fba
prerequisite-patch-id: 5ae103ca4cbca3ec265474864d587f354dc1bd6e
prerequisite-patch-id: 48f434e165245f5e129955e7422ab4b2e169228c
prerequisite-patch-id: 99497e3c88bab4a263746974a6917841cbf39e81
prerequisite-patch-id: ceb63056aefb166c5612c76cf4b4162518bef5db
prerequisite-patch-id: 4ff1b3eda0d083134d0f219def77d8560d498b34
prerequisite-patch-id: 21503e3eff8cd63d655b61f1796a27773abfb338
prerequisite-patch-id: 969c58debf3412802bbd52249a18d2029211be46
prerequisite-patch-id: 27e1b8ee810edfa69083bc839a6dc7f379802dbb
prerequisite-patch-id: aa0d3f25c5568863f0254104096a428f2bae88ed
prerequisite-patch-id: 21eac5195b7ac3ddbcb64cd56df90f39eb422fd2
prerequisite-patch-id: 034702466eb89af44d92a84424e9007ea7be9f89
prerequisite-patch-id: 812a0261500bc7583175a60a270e35b25629084d
prerequisite-patch-id: 9b300dbe011015634a2fe6cdce69b4fa4c3b2257
prerequisite-patch-id: 9dd5b003ea5d022ea51c14b014e54bc0493f6e29
prerequisite-patch-id: 7f5e916adcde054c083c83a48354eb7f29dcb8b3
prerequisite-patch-id: 3ec03949f9b4801aea3a71e44d470f625314750c
prerequisite-patch-id: b5505cc7e250e926492481894ce92c94b5aff853
prerequisite-patch-id: f17cd96a647219490c61eec6b0efe663fb24187f
prerequisite-patch-id: 6b711a1be216ba8cb02b2600427929c64380a801
prerequisite-patch-id: cc5febdabdde60d79a37f4e4f75f1d8cbd0ecad6
prerequisite-patch-id: 493270912472f6010db059b2959413546325991e
prerequisite-patch-id: 04561699d33082a6bcbacb16d77047b9353015ca
prerequisite-patch-id: 1bc8c44120c1075edc97152e8a6b2af6eb4e6ffa
prerequisite-patch-id: 3bb97e6d83a9ed2389bf0f6be8cddd5f3fbc4257
prerequisite-patch-id: f677a7d0bb4a2a2b09b3c3e3fabd2ed656af1005
prerequisite-patch-id: d529c6448192d2af1a9c768008b82cfe5875cf83
prerequisite-patch-id: 7d170d7ae4d888482f30ae9753c69ef362024f8b
prerequisite-patch-id: 4b104dc92bc2c66da4f329d3115331c1c263f15b
prerequisite-patch-id: 479a000325614190060b53d28318e19001c14306
prerequisite-patch-id: c4566ad32f9a94040349499468a8842c8fd04d5b
prerequisite-patch-id: 07dab09855d27f6e6413dc7ffba3fa24da27b72b
prerequisite-patch-id: b311dba21ab2f310f6a466de260bee76d7273f29
prerequisite-patch-id: 761c08facab4357133c2723f9d1614576465af23
prerequisite-patch-id: 5139d51d1b77db1ab0850563071da20931f69800
prerequisite-patch-id: 40147ae84b927d3a179c0d3c1273924dbde50465
prerequisite-patch-id: 4e6d89036e0beb72a8e604f7b14659b1821b8515
prerequisite-patch-id: 62e1f6884997ec9d35698fa3b04ff89a20c36c18
prerequisite-patch-id: 72e42cd32a1cd6ca7af39bf7ee0a9d965299ab40
prerequisite-patch-id: 2aa7001382318652198e87b86e02d5d15cf3f8e6
prerequisite-patch-id: 192213da68a086266c567d1825717212d49342ea
prerequisite-patch-id: 34a313ac5a291e5905d6b56157cab7a741152355
prerequisite-patch-id: 6e530e78fff7422c37596d10211c2a799be63925
prerequisite-patch-id: 36d148e6ce4729ddb0894eb8293f1d3f3712a8a1
prerequisite-patch-id: cb31fc1cec77553500840700487f25920c33dcba
prerequisite-patch-id: 549c046b24e1e8ccfe689f73350af92465e0da78
prerequisite-patch-id: 310821320eb2fa9cd5a458cad2925bb07c6ee26c
prerequisite-patch-id: 4ac030af7c784f96bb30112259cb5e93f17ea416
prerequisite-patch-id: c728f55e83eae88d7586cc99ddcb5fc26c81f066
prerequisite-patch-id: 53c61f8751b8eb62be62508474e579f4a2993380
prerequisite-patch-id: adc6bb115e4232b78334e93466c9079111ba16a1
prerequisite-patch-id: b07361263cf216515a50527c3c7e6e01d79bb6bd
prerequisite-patch-id: 174045b0e4ebf6f1349811eb7b79b1285175db0c
prerequisite-patch-id: 80825b82a06d79e512d13d7958d500ff39cdab9e
prerequisite-patch-id: 4705ddd0afab18c28fe993feeb6fc7f60e0e425a
prerequisite-patch-id: de17bb2f2beaeeb442f70a23a49dc1fcd8a47fea
prerequisite-patch-id: 8d72380092d7e8f935dc5ab5435195a8b2da514c
prerequisite-patch-id: 34d9ca5a5bba443213c06a2baca564723ca8e664
prerequisite-patch-id: 7aa6732bb2b9a22c7dc6cdbb64c7b2756be52867
prerequisite-patch-id: 7bbaff2da1102cb917a1c92825eca41b3705782c
prerequisite-patch-id: 72b0103f6fd2aa951383b2ed636a1644e0f9cd62
prerequisite-patch-id: f03a7bfba7e452ade47023c80a078bceb9784a44
prerequisite-patch-id: c56b60e9f988618cce6490433a3ae7c9083dab66
prerequisite-patch-id: a2ef6fc22b9578758f9e494daee6f8accc730c10
prerequisite-patch-id: 0fda3a6699ea12b6ee2bd7da3b091930d4a38067
prerequisite-patch-id: 76713caded538f29da1d1978f471d2be921f5037
prerequisite-patch-id: b34a567728b8d84709ede490b483e446a5eb05a4
prerequisite-patch-id: 5bc614f97ebf78c3cb662216e0637e4a3bd8aeb0
prerequisite-patch-id: 793bba9b46f183db35176f4295775be6a0a41982
prerequisite-patch-id: 78714b3eef47af6704d57c241989caf309575999
prerequisite-patch-id: 57ffd5b172a3f21babce86491ce28affcd87031c
prerequisite-patch-id: b32db2b309bccce9ff2403f3ab5a39e6d9fa0b16
prerequisite-patch-id: e0501b40ed7b8e79dba4cc7e9068bc5d050ccfb2
prerequisite-patch-id: e4c2d697244b4bd6073b9c34ddbbd7952b421df4
prerequisite-patch-id: 505b255b01aa8ad1308d50e18f265ddf0c0891c1
prerequisite-patch-id: a7c3a68eb4c5d2f7d61fe4414846ff8f85a4e34b
prerequisite-patch-id: 49e80b4fafa0726ea43f83bc259c82b1b15ec9b2
prerequisite-patch-id: 53452b22d0dc67d528a215df5d9bd2535a5d420b
prerequisite-patch-id: cecc7097356b9cce4380766d245891f8dd19d051
prerequisite-patch-id: c588a4d424626acf5a9e087d192141baa920f405
prerequisite-patch-id: 2e01a7946223ac28b5fb0f4141d2ab68f62522b0
prerequisite-patch-id: e258c44680d6f8d42c6be533a3e4760e42409176
prerequisite-patch-id: 2811ebc05487541d2efc4413868cef3fd328a5c8
prerequisite-patch-id: d6b21ec11f4b5e6407d26decd8ec68baa758f711
prerequisite-patch-id: 4e6c2cb95bc5c5c28ce29872a58b47fe3882d895
prerequisite-patch-id: ce4f77f5a68abdba0c7efbc9648ecd6703751173
prerequisite-patch-id: 18fc3226f86989fc285109e02d2a15048c28337c
prerequisite-patch-id: 32f65853c13814a5c642a98fee72001c88eacc56
prerequisite-patch-id: 0f710069c44defe3699ea455821e08c2b66bca1a
prerequisite-patch-id: 9e46289b882eb3d7c8c20206330566c1eb1b77a1
prerequisite-patch-id: 2846b6bc8014f52abe1655a16c04b99066a98036
prerequisite-patch-id: b86162ceafa6f05a15be24e399a5794adfbbbdb7
prerequisite-patch-id: 04ff6f6a1697c8c5dde457b70c3b7f00a64e921b
prerequisite-patch-id: 499a07a9065ff9f377661958fa30d604551dad55
prerequisite-patch-id: a53186fbc58db496b947caf0d2ce54fce0e77b2c
prerequisite-patch-id: bee87ad0bc9e31c7df413bd7545fed7dbfca3e1a
prerequisite-patch-id: e3f3c9499333fd6a8fad3bbe344473e8461f1424
prerequisite-patch-id: e999b9952f18e11f9a188b5b55bef4cd97e6c7ba
prerequisite-patch-id: f555b3853b778345ae409c352a1d19fcd6846a2d
prerequisite-patch-id: 47d629438c3da8149f9100b3a1c4657c1b11cda9
prerequisite-patch-id: 3e33882f935a286ba821c38ac6641cf4d4c88cf9
prerequisite-patch-id: 7f2a3aecfb4872b7a34b29396a4c8c33367cfeaa
prerequisite-patch-id: 2e1e97eb0b7da8e704b413d20c4169ef2e22bebe
prerequisite-patch-id: 9c4ddc56ef60ca79a98ea1249e34e67e7553dafd
prerequisite-patch-id: 7655242c51eb37843b5a62af313d2ffcfaf5cd30
prerequisite-patch-id: c5e077c2b2f9dd8a9fcd4f3756fad032e2a9cc6a
prerequisite-patch-id: 1d3af029d9a6a48b5f24d93020b4dda7ff594314
prerequisite-patch-id: 698d6bae361381fe23189a32481f13a6632f4697
prerequisite-patch-id: c142d1a06d43cbd8499678e7dde9acd01e30a592
prerequisite-patch-id: eb155a892972bd7b6a22d382669920c76258725c
prerequisite-patch-id: 280f28adedccbc31a4a7af4c9e24876f22fd72d6
prerequisite-patch-id: 1eef69c4243b1dd29aa886affa15a433a240ddac
prerequisite-patch-id: 6a435ebde5065fb031f85b5ec0456222f1ee2227
prerequisite-patch-id: f822e968cb00adc4cd67773e19e8466b84ca0212
prerequisite-patch-id: 5f63da2e92290e0ea7abc67d50c99dcb83150488
prerequisite-patch-id: 3d9a337e58993357885a0c5463c111e4a4b0b3c7
prerequisite-patch-id: 28cf9a560dbbce17210d27f090aa9f5a730494e4
prerequisite-patch-id: 8921d1df106de8230a7e2823bd841f5d23b5ff79
prerequisite-patch-id: e9dde7037c2ca364e0539f3a8ae457eea8ef6a0d
prerequisite-patch-id: cc7116cb0ecaa5728458cd70f54e3bb64e5679fb
prerequisite-patch-id: a8cfce9ed92f00eb2f3ad023902e04835a409fbe
prerequisite-patch-id: 0ff312a223a84ec90636977a4a222cf81d5dbb4a
prerequisite-patch-id: 7b90050227ed45bed0041e4bbc67954c8cec6513
prerequisite-patch-id: e0fc5f80bc8714a67994fb924388cbefab008da0
prerequisite-patch-id: 254503e94af6f27636c6a50b53f347863ef716c9
prerequisite-patch-id: 1676c8b99b7de7d3189ad515863716869df83791
prerequisite-patch-id: 2eaf1e15ac9269688f957c687859cf0724033473
prerequisite-patch-id: 31397b13b6c8de6c9498897b9d228517d78e00f2
prerequisite-patch-id: e935e1ac3edb723200df366d01eab1db17e14b5c
prerequisite-patch-id: f8113e0509e8bcffdec72e4a9fcd3d77ffc0dffa
prerequisite-patch-id: f1e7bbe9e4b3b7a276c6f6f3484bf129bb0cb5fb
prerequisite-patch-id: 12d6e7c964e8af8e5c197b43d3580e2e3fe72ffe
prerequisite-patch-id: ae7b6da5d9da37ecafeb7f1154a42e72e1eed1de
prerequisite-patch-id: b9b91c2a6aba9c0aa4118d8ee13daad20e2000fd
prerequisite-patch-id: 0385aa01bb31b749750491169690e97bc4fd56a0
prerequisite-patch-id: 93be3e329bf2fed68a0571aed2a3508fa887e780
prerequisite-patch-id: 3f4d237b7c830493df534c7a63d72c8024e9d592
prerequisite-patch-id: c82fadce1b18c5eec9d23711d508072387bbc1c9
prerequisite-patch-id: 2555264cb1609e73360f94bfc059cc5fdb9584ac
prerequisite-patch-id: 9e9f7d211a8de20a5a4c2a9f6e5c3e3c06b00c03
prerequisite-patch-id: 1cdad2b232d7b0e55cfe430991486bb72321edbb
prerequisite-patch-id: c9d876a0b6606baffe87db7e719a55e8d04e0ca6
prerequisite-patch-id: b997c036ded8463553330ce80a6c56c645afeb4a
prerequisite-patch-id: 4367744818a2cf899d7ea9704aa024456185c5a6
prerequisite-patch-id: ebcec15e63f2b4ffbad3de2e1396631dc22bca34
prerequisite-patch-id: 65b83104bd9b30353732e77b9c62b3c6bb39379f
prerequisite-patch-id: 1ea7b75fb45cb38065528ecf5e33544c1552c5e9
prerequisite-patch-id: fd31e69e939e9eae6fcba32d86df4e98385a98d9
prerequisite-patch-id: b5871176f7c6f63698f09738f15433821bce7645
prerequisite-patch-id: b251cb16dae2ecb572c6761036469d892b08a62e
prerequisite-patch-id: 160e15326edf3f6d42803a87bee31ebdb91061ae
prerequisite-patch-id: 4348491b505bd6ae9c7c37899e1129e298b68914
prerequisite-patch-id: d3574fef73ff58db3eeea27960fa0f8182521a59
prerequisite-patch-id: 0172bf7371c3452fe2ee364394b75a9ba9851dc7
prerequisite-patch-id: 57a096fc14f629e0b7898d664ec36de208af9062
prerequisite-patch-id: ea6513af3231243e9ae4655910a580c827b6a001
prerequisite-patch-id: e15606f72a8115dc3f900d52cf42c57c3e5d87e8
prerequisite-patch-id: b18caf3f57ff93dd206033b30552284bcaa65cd0
prerequisite-patch-id: dd22102664eecdf0c7510425747bfce720228410
prerequisite-patch-id: f5d742ccb0cc31ff9d47f9b2710c18e641e929ca
prerequisite-patch-id: cbaed6c22ac6fb1898f8f20583552053b70bc3da
prerequisite-patch-id: 6a91e7060858f29733a626792b641464dcfe8b7c
prerequisite-patch-id: 4443981740b44fd69ec59492cf85aef67b87e9ee
prerequisite-patch-id: ebac7a49588eb9405e193432ecb01921cddb012b
prerequisite-patch-id: 9d37652af6a86af146fc4c1c7f9edeceae2fea82
prerequisite-patch-id: 8e44d184dca9fe123d83d12f0f40e25c2858ba53
prerequisite-patch-id: e70d6710d237d3ac5c0363335987eb2e7924fbc3
prerequisite-patch-id: d0819ba0739587ce6e29a2e218f62c88c3d6851f
prerequisite-patch-id: 536a605264ae1199aedb201a71d3615dba4487b8
prerequisite-patch-id: 222ef6c3948a0df8ba449edb46ebbed7827d7257
prerequisite-patch-id: 1a3cd4cfaaae0ebe99c55bc6ed5c0f25f7805658
prerequisite-patch-id: f8ea4741d35a35d25f525952f803792f96b86ded
prerequisite-patch-id: c76eb4f9c71c308fa0f0087ee3200f5697799e59
prerequisite-patch-id: d6db22e18539869e3db6a6b2d2686e6ad2686def
prerequisite-patch-id: d50ea1b865504b98931fe6507a9b63d8d1990f29
prerequisite-patch-id: 6e22e2c8017a6f427399df60eda1e0bd906a4a4e
prerequisite-patch-id: d6cb853b9b4bd2d619a13a56145429668772665f
prerequisite-patch-id: 19f08000cb069f94452fb4049e6e36892f8a5f89
prerequisite-patch-id: c5f72be66c238baed0814991a174175c69d1938a
prerequisite-patch-id: 86a0ebae385a83056ea785e259297a47b140698f
prerequisite-patch-id: 09c90b0015600f518a3867f2bd784c9fca0b05e1
prerequisite-patch-id: b9b0d6041cd9f71fdee5ed9c4dcd2b02a57f6735
prerequisite-patch-id: c72cfa662232a5c54cb4c4fa4ce0f68ee5083148
prerequisite-patch-id: 3ca1103e93c59392ef2b84d924fd8a8b4295ade1
prerequisite-patch-id: b9cfaf7c31a2f08af6d28b5c6588b289212b5510
prerequisite-patch-id: c60ba25710a14ccccb0cfef0fde90b7f8683ba5e
prerequisite-patch-id: 349e03b146a1594744a2b93a44e096345bb02a0b
prerequisite-patch-id: ed79ee4eee7f80a17d43ada9ffab350ee5ca2179
prerequisite-patch-id: 2e82d635a20fa6e1c54473e3339abf3997a43021
prerequisite-patch-id: 78eefc839d424177203e481b54989703fe85257d
prerequisite-patch-id: 231397fa9f1b635ddf2a80783bb92d40882a5512
prerequisite-patch-id: f9ee1f5d4e4ae3fc2faeaaddcbc6ae43b19c8943
prerequisite-patch-id: 2bf933c4472bdc0c30dab02059a6dd188aea707d
prerequisite-patch-id: c4ff5a28d0be11738a391081421f9f1a5f0b6d08
prerequisite-patch-id: 52c50794e6c50ff87793daa5108ab5ff69f80a5f
prerequisite-patch-id: 2f6922f0cc4dc6e3d46706988de09d460e1b97f3
prerequisite-patch-id: 512c5781f830d64a009dbb2d935353e55662459a
prerequisite-patch-id: 40bd985299ad4a3b5b75a23ce2e7f0350a41e11f
prerequisite-patch-id: 7467db3ed564e972ece11ec9dbd2ca321018477a
prerequisite-patch-id: 05d8284b14baddfda90088ec0e0c7e33f5043eb2
prerequisite-patch-id: 21ccef2e8a56786f51031166876ef2de4ba75025
prerequisite-patch-id: 3469a96dd07a46c4f7243bf74f8d1f0061faa8ea
prerequisite-patch-id: 6e84a034db8cab5f5105cb022fe9d72a9c609a69
prerequisite-patch-id: 8b1aa22cf126636ee6dea8020a99b6ea85c96b02
prerequisite-patch-id: 1c863700440c100b71382fdbfbeb08ff7558929e
prerequisite-patch-id: 0a0037212f2e99268ef2f90f65ef2742c59437df
prerequisite-patch-id: 976389cbd46af7c659b8ee58ea15f651505e357a
prerequisite-patch-id: 23a8e7aa9179b0a31417b572794466e38c8297af
prerequisite-patch-id: 0f2453742bcf7ab9013a5ff03b5dce6df6c4b714
prerequisite-patch-id: f942437896f5c265e9937e833a77c0fb7ac3d828
prerequisite-patch-id: 7fd8368b4daa7c9a7787ab2bd45244aa8af1ebed
prerequisite-patch-id: 382ab0bc92ca477338d11c61c94f796421410f25
prerequisite-patch-id: 1508ce830cd1de4fee893a22d8b83f3f82c131a6
prerequisite-patch-id: 69aa670d590ddb469abde491547b442b213b085d
prerequisite-patch-id: 323555055654c54eb1ce76146f4d934e355650df
prerequisite-patch-id: b8e8da9f0aba9e65d9663b9d84547036a60ec0d4
prerequisite-patch-id: 65b6aba1d4efc28757efc7ca6fcf9704612f0b89
prerequisite-patch-id: d6229405e9e5267d75872a4a6b22e65a3ddb46ec
prerequisite-patch-id: 2bd1bb7ff35b14b28271de12194e5a1df54035a1
prerequisite-patch-id: c8644400ec8a9db2291524a1c18c95213ea5e825
prerequisite-patch-id: f8f6f25af8ada4aa2d7ff838b729c33f5bd9ca28
prerequisite-patch-id: 34e71d361d9c9023605725539b351f14d576eaf0
prerequisite-patch-id: b59f486c5a79a58202dadd7d8df569316a645da3
prerequisite-patch-id: 96396be916e029786648fa0c77a666e1043b5ac7
prerequisite-patch-id: 168acb8dbf45f529db49083c05b0485360b11a80
prerequisite-patch-id: 564d1f40ebb1358eecaeb1a7c7b18686c81d2f26
prerequisite-patch-id: 02f0fb832510b18e1f4d4bffea7df1d33fb64395
prerequisite-patch-id: ae8ada899b8019223da4df03b4d60a8fa5e6d195
prerequisite-patch-id: 76ccd1d9f733f03129844a428d806a55f2a67469
prerequisite-patch-id: 8ffeec726c2b400ea59475351e1b19405e68b074
prerequisite-patch-id: 8bd3fc6fbe33df8d3fdd506ad0a76bcf5f6c8308
prerequisite-patch-id: d4f1c401feabe4bae082473e0cce15a8004edd11
prerequisite-patch-id: fcb16f319f35ddb88e1668bbe7a8811d88235672
prerequisite-patch-id: f3e02f4d7a3e30a2a9b3533a11b362faed999c41
prerequisite-patch-id: 9019b3b6ee957aef9f15e8af4ee219e1de5cc363
prerequisite-patch-id: 04d000f5d3b8e9a57f92df637295543ef0080209
prerequisite-patch-id: a4dfa49b2e5b864738356be7321047fd22f45f19
prerequisite-patch-id: fc07ce4cab5b0b1a91fb33e54fc29751be775d26
prerequisite-patch-id: d984582a425997909ce38cf92475b71b42eb9a80
prerequisite-patch-id: 5d40d092993242fc2b81d593a1d5697f3dd8ac45
prerequisite-patch-id: cc7c32beea221ae5d0f8d9f70bb316b805e3fe05
prerequisite-patch-id: d7a2556617db798c59bdebd30cbff14be062006d
prerequisite-patch-id: cc6cbb2ee449107d954962994d64c090b2934d3c
prerequisite-patch-id: 8c953024c3b35346ae7a1478f8c5b0457e66f783
prerequisite-patch-id: 5d6316571c56ce2fbd5a4b05942e596cfbbb5d17
prerequisite-patch-id: f0711bd90cba1260a7359e796d5fe16bf1e71258
prerequisite-patch-id: bbf0608eb8bce394bcc75b9ac94370c568767fdc
prerequisite-patch-id: 279e8f541b769e767c6400059d4b49bdc40bbce6
prerequisite-patch-id: 8bb1dfece15e47e5930e5dc46f1e5071af43ed35
prerequisite-patch-id: af7b5de73a2a4997295a9129f912cc1742037e77
prerequisite-patch-id: 4cb9e48ea6b9150663c4bf1d4f17ebd74bb28d1b
prerequisite-patch-id: 19370b270d931dac3f5c3aa34caa8f137a963d2c
prerequisite-patch-id: 12e937dda2281d055a2c1ad150e7668b1d450cf9
prerequisite-patch-id: 7e128da84db3eecc9db68da5f9173670095a85e9
prerequisite-patch-id: 51ba3d2e58384093af45c8f93e3871e8ce616282
prerequisite-patch-id: 43cdf49e97bd1727fe47cc2a029463385751c0b1
prerequisite-patch-id: e41a748da4e541c1848427fc70a2961aee7d0ef7
prerequisite-patch-id: 1977bfd9b7505e43c16e4a69fa2969d8af6800fe
prerequisite-patch-id: a8d9d97ae50b1b492e383046d1c9ff875d7d16fd
prerequisite-patch-id: d850ae89c5340682f0ae72ba1d5a6569a43784be
prerequisite-patch-id: b6bb1b72dbd8a9d102a2a3e70d5832ce20f46feb
prerequisite-patch-id: b2cc5a816d06f757cf09fb4b7a6b6a572514f570
prerequisite-patch-id: f880f729bba66a932da7e5ecc9b673337cc54d6e
prerequisite-patch-id: 0f14bac7444332a023d676e87fb73b7d53610b77
prerequisite-patch-id: 5c9718a1b86cbb6e12ae179a7edf65eeb1a8ed72
prerequisite-patch-id: 7303e2e1fdea765f2585f7f7bb7797e484c5c3f3
prerequisite-patch-id: df833b0b511069aad5f82d94350bb1d2129402cd
prerequisite-patch-id: 31f89ce70e26c865476445793105d5309359391c
prerequisite-patch-id: 4292b6562609c48c4bf2dcddc576ec7b517ab6b0
prerequisite-patch-id: d0ca69d0fe3b8ecc9118bef3e0344ab48abd4382
prerequisite-patch-id: 44990e874a4df5505535679c90cd60c3df30fef1
prerequisite-patch-id: cd98b74fa56af72af2553f391c400981d83cd4f4
prerequisite-patch-id: f1ded4626f25d4e6bf803b2000bdc9e18592f755
prerequisite-patch-id: ad9df4f8c3986e14a51f2862eaaf96c42b461e19
prerequisite-patch-id: 723bfcc0edcd498331f2ce6c1710051de6ee64df
prerequisite-patch-id: a51b20f7348b72476adec9e46a93f93cef544516
prerequisite-patch-id: 7b48acfe8e365d3fbd056d61432de84e6671eba3
prerequisite-patch-id: 7b91d9860d327c1663275b4bc885536ea1d296c8
prerequisite-patch-id: b353fc923866f6aeee3dfd1fd65e3a815dd4b9ba
prerequisite-patch-id: 1263c9a58c306811961d15dddeebc19f8c92dbe7
prerequisite-patch-id: dec29cc12d406012e5423d021030e3a404a64bb9
prerequisite-patch-id: 97ec2ada25406347a8768c9de665f59d213a4555
prerequisite-patch-id: f830fd7f2a33593c705de5caf3b2b503f1debba4
prerequisite-patch-id: aeaf2928ba087a8438015e00bf62ec9a61f26c5d
prerequisite-patch-id: eaa1df7ce5710d581f6da61c85bd3cd5bb2c80e9
prerequisite-patch-id: a6efeb6826c29de63d942ae91b450984aa860aa4
prerequisite-patch-id: 1a6dffd5db1aa3778b1ec10914c6a499345c2ed6
prerequisite-patch-id: 7500d7586bfd78dba03383b590bf4312dce146c2
prerequisite-patch-id: 0ee5f45d90e78cfd6142971220c276783cf535b9
prerequisite-patch-id: 0a79ef3db1a95a12d533b36f32cba6447015d60e
prerequisite-patch-id: b0d7604a3c3df07c3923377342ea4068bd448461
prerequisite-patch-id: 9c20a9b25b2f4c518d83d0ea8792038a666f9ad0
prerequisite-patch-id: 3010235de0b906e0fec2d3d0d56a32fb2b421eb1
prerequisite-patch-id: 4daa4e9298d76f11f49d25a2ef4909c97c139aeb
prerequisite-patch-id: c1f0354b829899b7a075027e1ac1ae63ed8dd94b
prerequisite-patch-id: fb5966da429e0d0256f60fabf3ffe84ad7901e6d
prerequisite-patch-id: b3648bc2ee3e77cb806941438195d3522cdab41a
prerequisite-patch-id: a2fc59880f400ae551987f146ae69b8660c6b441
prerequisite-patch-id: 7c495c12cb1ffe7d1c856c91b2de31ee4567a153
prerequisite-patch-id: 05a0cb51ce9a7d3473bdb82cdf55bffe1dd94e9f
prerequisite-patch-id: 0f58d7e280e09bf54f0102909d28818618d11063
prerequisite-patch-id: 70ec0fe2676fa3c9355b86ff07edca09d50fca6d
prerequisite-patch-id: dc831a7877b7baa94d90b06545c175c5a81dad7a
prerequisite-patch-id: 3ab3def5330ff6f903f15a9304e78d0b3d774e1a
prerequisite-patch-id: 47d74fb1b407b705e8babcb48964aa077c1bfcb3
prerequisite-patch-id: 184d774ede0f57d3afc202d616e9a4d98f0061d3
prerequisite-patch-id: 3ac7e69649431795fe31b890b830fdb71922839c
prerequisite-patch-id: d29fe54dbd3200e037608f49753da099c5e12619
prerequisite-patch-id: a2028df3d93ba4181ab3f8964d70af9970794313
prerequisite-patch-id: cbbc1e1bfeced856d4df37953a0d91dfab782984
prerequisite-patch-id: e28fcf28392a280bc64bebe7f2d29c5d730d0951
prerequisite-patch-id: 60557b9071537ce7f37947bad3ed662a90a54611
prerequisite-patch-id: 5ae255771c5687a3b75b2d21dd3e2827ea405991
prerequisite-patch-id: eea8859d90d7a2805c3b9e0db9db6069aaaec910
prerequisite-patch-id: 7c8a64a128149534b337db60e9badc9aca801408
prerequisite-patch-id: a7c7e0f38bda84b497c308dd3faf5fe046ce2053
prerequisite-patch-id: d14cbf2dd9c35d3d6e4c7509169d71d21577aa34
prerequisite-patch-id: f474b518d550bc32ccd35af0996650b89550c868
prerequisite-patch-id: bec220faeb1f3fd676339a52391d5d8df428e325
prerequisite-patch-id: 45d5b17bc32190c443d5cc127fb0f01415b590b3
prerequisite-patch-id: c3825b635f6b75e5851d55db3c2d8ca6a296d5d1
prerequisite-patch-id: b8da8cb61326d3c9cb6f9f3bf07a6f55b9735939
prerequisite-patch-id: 585377d3069ef9cd7760febe2403d5910b63dad3
prerequisite-patch-id: 80193d00498910e0480f81309aeeff78fffac8db
prerequisite-patch-id: ffc8aae01dfc53b2cc5b47004d8e0f7f35d3f547
prerequisite-patch-id: 68322e23de253594b39f356df3d4510eaa962e48
prerequisite-patch-id: bc8f73497eaab14fd4a73f5dec479798e32d2efd
prerequisite-patch-id: d1d8a3431e968582b186916241bda075b2156d75
prerequisite-patch-id: e248dff11a33708b156cc082146ea31e75332030
prerequisite-patch-id: 93008f9256d78c35b9ec2d5209fa8fe8f7f7aeaf
prerequisite-patch-id: 21f1c499c0acf5a3a9f285d5dc3e9df5a3abbc02
prerequisite-patch-id: b0ef8792a92e2e7ff04972c73c6abf224d226cd2
prerequisite-patch-id: f5462c0306367ea2929a5ae0e5afc5f67d508b05
prerequisite-patch-id: 8f3cf3d1753d6746947255945edb4852aa56c5b2
prerequisite-patch-id: da80f70dde1d96a154ac6926e25518306282c650
prerequisite-patch-id: 0e12f0b6bd11adfa5a0388f05838bd3e3788cc12
prerequisite-patch-id: 3ba7fc25d7b2c3e935a8d835c0383faa757ac99c
prerequisite-patch-id: cb4db80595f5215ece1e270f33b2f1214199b4ea
prerequisite-patch-id: 15780335750eb293d5b0e013e186e7f2b596ba7d
prerequisite-patch-id: d8ff9b00f35526d161259071190d873c425331f4
prerequisite-patch-id: 24d25a962b7e3cfee2b2de2a62d2bf4bd66980bf
prerequisite-patch-id: 16f869890d1fe385b15fc9317049c9d09b8b7fee
prerequisite-patch-id: e7877bad150babebc630187551b9c49bef36d54c
prerequisite-patch-id: 37453987a4843fc29e1818a60b9222bece0038cd
prerequisite-patch-id: b1a3c04d8d50a9028febf425ca6d6e995526ebe1
prerequisite-patch-id: 93c831932d20cbbfbbe3437df034f7a0d8418802
prerequisite-patch-id: 211656055ff2fbac58c8979b9810087335a3c207
prerequisite-patch-id: e69e0cb0626efa305af560c02061cd9dd01c884f
prerequisite-patch-id: bf4b44cc7e301b2e46b24aaaecddce7eec9a56be
prerequisite-patch-id: 26d14a3026da4e3ef5dae75d893c0b12a3e97e68
prerequisite-patch-id: 6ded8d70643a1bda4aa54643724069893a843573
prerequisite-patch-id: f0237ba78353842248695999ccb19c1d2f1c9e3a
prerequisite-patch-id: 2add47bab96d0276435ca4d4ec2f8cdf4b8c64ec
prerequisite-patch-id: da562aae92a7a9a7dea35796091f17faf7fe48f4
prerequisite-patch-id: 50fa2a48914bd94c518200211284d238ed06919e
prerequisite-patch-id: 570f80aecdb315de5f4b49d3ff8d569b9758f6a5
prerequisite-patch-id: 3cac974394062dff480894c17985495cdf39b6af
prerequisite-patch-id: b8ce67d43b98974ccd25cda5b93bcabf26d58d75
prerequisite-patch-id: e6e0f449d74a4a8581a3743f7d910b22e0b9cc42
prerequisite-patch-id: 44abca5a19027fb0c6c03f1c9e4d3c8913896f51
prerequisite-patch-id: 35c0c1c4814fb66c4102956ce1ddfd29772c49a0
prerequisite-patch-id: 22e56d296dc894f31d6422c65d18f5430ff90281
prerequisite-patch-id: bff53d9e61739c2953af55b7c601049114aafb6f
prerequisite-patch-id: 844d7085beb80bdcf9b93957373f5f263be9f92e
prerequisite-patch-id: de0b07b12310b55c7599be578cd6d62a309dea54
prerequisite-patch-id: 0999842b7e0a15dbd868a542339835502042f280
prerequisite-patch-id: 3ccad4670c308a1f9708b89d30c38bc72044301e
prerequisite-patch-id: b23225c92e33467afdc782917055dc68fe01444c
prerequisite-patch-id: 689fc21742a720b704686b20aa6fbbbeb1447a83
prerequisite-patch-id: 3e64789ae68351ffb311702ab0ee77163a72e929
prerequisite-patch-id: f4c36e0a913e30a578741f3947aa7d027b7f5919
prerequisite-patch-id: 65502577322ad6d1dfc377e5ae1006ba0034c07f
prerequisite-patch-id: d78282401181e3cac4b30fca4348c3c21be29a8d
prerequisite-patch-id: fd65d3e74151b5bfdc8d46f320ef7bbd28e175c0
prerequisite-patch-id: 113cc64122e8d3003b01e8842f967d1022449ee8
prerequisite-patch-id: 57923fedadb0c5bee45e80a9607d0f24c0e56fc9
prerequisite-patch-id: 9a479f1f385a8b02c4e3996a1147e5e304172ac3
prerequisite-patch-id: 7c6035a3e175f47c130f029a025ba0e341a292e6
prerequisite-patch-id: 73508f3b6c32f51aab16c66a0cfc9ca753d227b4
prerequisite-patch-id: d2028ea405a097976de872f788424c5d5c5f468b
prerequisite-patch-id: 5e0868c22c727e8cb62b2c0b9a899392aa5f6b2f
prerequisite-patch-id: a88fd8052e04e9cb6d94098bc2ae15af17ee9007
prerequisite-patch-id: 40d23f312fba55ea185f9efbecf14869fc850c57
prerequisite-patch-id: 06eb8a22932db59373cb92f790a513c5ee76e3c0
prerequisite-patch-id: d257b04dccf7cc1349d75b946ecb22c83a5a4582
prerequisite-patch-id: c22ef339ced0e294558cdd1862226273f057e03f
prerequisite-patch-id: 6e8e2b93e5966b68bf8507f98c597025f8bbaa01
prerequisite-patch-id: 74b45f7df7a4b1008e17173ee53d571432f334fd
prerequisite-patch-id: 05d3b35ea7c6a10cecdebcb77ad424732db63078
prerequisite-patch-id: 5d791d89ee5ef1afa089ba599c224d0485e9cb5b
prerequisite-patch-id: a95327d87f4ba3a0ac366aea0e1a7d5288ab83ef
prerequisite-patch-id: bd5d4630d93c23d6e9f856a999a2f61bbf20d00a
prerequisite-patch-id: 587983da54e1e105d64e8edafcd7d286f0552f74
prerequisite-patch-id: dc404620597a1e6b101f1536537bc7ac1cdcaa0f
prerequisite-patch-id: 1d75d848882f4c9e4b15209897247aa1116631cb
prerequisite-patch-id: 131c7aab73485da67a36c83106cc991a53bae37a
prerequisite-patch-id: 2e0a8c3e8cccdb683eb255bdb4e2baf30e43d811
prerequisite-patch-id: 353bb9f10edf029cb40bab9d381aa51ce92c969b
prerequisite-patch-id: ff02af03c2969e4eea78d97cdd40d8e0515903af
prerequisite-patch-id: 34653419f3d402c87f8d46274db9ba5a7ff72140
prerequisite-patch-id: ebc365b6355148d4188dd3b0559443415bbb9349
prerequisite-patch-id: 6dbae12c677c86965eb4e7064ebd40132118362e
prerequisite-patch-id: 9a2b3f9ccf790886a08284445dd512cb58b57f7c
prerequisite-patch-id: 7b0721b5a0649d9937808699010e6f68797791fc
prerequisite-patch-id: 178d5f92c132dc147948a03df6f275b2c731690f
prerequisite-patch-id: c797c2c4023055d2f867bd9e8cceb0bd8b10079a
prerequisite-patch-id: 7b644ebadb37a365064cd871a3c413367fe36b08
prerequisite-patch-id: fef4051975898eb067c1a08389d46bf6587de771
prerequisite-patch-id: b7abd2b567443f16b44f3c857d1479ea2ef9472b
prerequisite-patch-id: 3a0f6ad0abb2e057fa6d0e0875ad8e983fabefb5
prerequisite-patch-id: f503b709b0631bb7194cc2e9bb7ee7c606f6ab8d
prerequisite-patch-id: 5277e2c56d4edca56e7b7f9cd5441d5e2bc49f2b
prerequisite-patch-id: 083b85fa2b37b5aeaa16a5cf88221d42d25acb3e
prerequisite-patch-id: 19a020a224e5c96adaf1369fa64c569bd800821e
prerequisite-patch-id: 3b3101534e1870014a839df43fffdfd7698d902f
prerequisite-patch-id: 5c8ce22dc0bdf170265eccbff8b65124503bafe2
prerequisite-patch-id: 9779b9d659137a8e4f23444e1d8e843464b2f9a8
prerequisite-patch-id: 55ddb1f4784e04fe7c902e65c68d1f4fe3b704e6
prerequisite-patch-id: 6f099b0282c9a1334a4b94872deea0e8c1d3bf6c
prerequisite-patch-id: d14a3df450b2f49e2ce8892b981d4867f8321b1b
prerequisite-patch-id: d26f2f3018efc8cb854f6f9257d3f93b6912b789
prerequisite-patch-id: 267341e406d28d915f239487b003fd6c2775217d
prerequisite-patch-id: f8a0ea788653cc4198e6eeac37e3927792447797
prerequisite-patch-id: 9eec557a3691763da4033db0493741b41915480f
prerequisite-patch-id: f009bf2ce9daedabd90503dc53064de70d6261c1
prerequisite-patch-id: 89108468c3af387adf6b40492c750725e6c74039
prerequisite-patch-id: 61fbf9f0eebcc6ff36a4768af6d905590704b266
prerequisite-patch-id: 7f8d5d0e3c1f12eed25ce9083742329d123ce894
prerequisite-patch-id: 5c231f53208745ca38e99b65f608724b2f78f451
prerequisite-patch-id: 6f4511456908aee889da9313178cd49b3b285335
prerequisite-patch-id: 5dfec36ca22c0dece044d9d0b162e28125d22bdb
prerequisite-patch-id: 58d7846cf1c47ca55ae5e483bb1d6af0610ef18d
prerequisite-patch-id: d2560dab8dde1eb486c4cb913ded96b29facc090
prerequisite-patch-id: 89e456027b0939e9c8255b9000757297fdc4fad6
prerequisite-patch-id: 022145339e9fbe1492c553125d7ce4458f38ce62
prerequisite-patch-id: 437ccaafeb7137e42646facb643a3f2a2be9649b
prerequisite-patch-id: dc1309874d4878f746174c028b0d5dc2b013e86a
prerequisite-patch-id: 7066a4ce3f0be396cda90958ef42c0e046a70db7
prerequisite-patch-id: 178358720875496ac33c7b2fc1a6a9eb723387b2
prerequisite-patch-id: 843060bf8854ee35aa38f9d33a8809406060d656
prerequisite-patch-id: 9566f26f78d65e8f36aad0f01a958bc0ffa6575c
prerequisite-patch-id: 1a893cca515a526d187aef80dfecc7161fd20b22
prerequisite-patch-id: 675d1d0cf1d2ae8918a9585c97221434bb398b09
prerequisite-patch-id: a3bfb8f3e68b763dcd76ebf046e55139f9bd9aad
prerequisite-patch-id: 86371a2d88614fec301cdea183ad7f5596ddbf8c
prerequisite-patch-id: 9fb0d81952e2ad181b333e97c59538413caa72de
prerequisite-patch-id: 818b97240c34961f220df6199b57561d52b3b28f
prerequisite-patch-id: 2f73d2697e96633b49dbda0558fdbca9a327308d
prerequisite-patch-id: 09250260d3c2ba3a52beae0bc22f1ca92fee1f0e
prerequisite-patch-id: 22f95524df1d19fcefd40db3259752f2fe1fe122
prerequisite-patch-id: 6fb0235d6e9b8cb32d35e9f23b5da8b13a91368a
prerequisite-patch-id: f485f707216ead06b7c5e31721ee75c06e3946ab
prerequisite-patch-id: 0b4131fde1791d644bf2176dcac18c36f231f9a9
prerequisite-patch-id: 05505dca2880b7218979454970ffbb5e0935a0b0
prerequisite-patch-id: 8777b7938ff6c0e1c8a65ac6144901f0e5188e1b
prerequisite-patch-id: cc871abea187ecc45b5606bd355d4ed43fe0e966
prerequisite-patch-id: 41a05d1e9916a0c1884594e933683bac90960b24
prerequisite-patch-id: 27668c1a644871bb69a5c69218e8d5b389ee2cba
prerequisite-patch-id: d2f7682f9cf79fd08c64f7c02a5f3072e39ada70
prerequisite-patch-id: 3edd50ec982c4890269743ad81961955e7682a87
prerequisite-patch-id: 22164c84b9b5dc5b6f8224fb90dd1545ddbedb24
prerequisite-patch-id: 4b227fa11eef92369d10fd29ae61aa474c8c0b75
prerequisite-patch-id: 1fb7e55e8ab50abee06d75c21e236be96fcab483
prerequisite-patch-id: af6d9dadcb4ab471232a3edb7956267035c411b8
prerequisite-patch-id: 12ce8a7448c6079792420f1147c52145b1ef9e9c
prerequisite-patch-id: 98f12f46e918bfd73855d078ef8d152a382fd366
prerequisite-patch-id: 63070d34379d650c9aa9ed4c4b514f3d7ebd9a93
prerequisite-patch-id: 6218e37023d5eb4d9400f944c610cb2019354a7f
prerequisite-patch-id: 606868d5ff1f0cf33c16e719927d9bef399586a2
prerequisite-patch-id: fff54950bc422debfebb3e0b09ac8d04b05d2076
prerequisite-patch-id: 943f3b12582007e6b0a0012728442b0524add7ac
prerequisite-patch-id: 450e7d6c923b6b2cb2e4ef76076780d141478c5d
prerequisite-patch-id: f8edff5e68e9ffd8e5181af4ed90f29be4bc528f
prerequisite-patch-id: f737088f816b9ba42cfa97ace6202278475644bf
prerequisite-patch-id: fb304ce84e5d6fed94cdec1af6437b0e7b49081f
prerequisite-patch-id: 602a178b2e112c5bc3a8e35172476d1f83fb8636
prerequisite-patch-id: 8dc66a162bbffc635ef5f7b106bd45f36f50f555
prerequisite-patch-id: fdabc2ac484ce1392a05e8ad4bdb4e8755058c39
prerequisite-patch-id: 469a8e5966db37803518ac08684cab1de42ae953
prerequisite-patch-id: bb8d697eed90c28422a8fd654026b377ea2022e9
prerequisite-patch-id: 6eea30f3798db26a99afc122d1dc30886824fd60
prerequisite-patch-id: 6b076ce86317fbb89d3f7731bf93d1df889f7d67
prerequisite-patch-id: 4f1f495f27dcdf855fb4e73fe59ac2158d86afab
prerequisite-patch-id: e31b585643e548f52758d312007a515439c9f797
prerequisite-patch-id: 94edbe5f12c5d8621baab68aca7c0932cc9b6562
prerequisite-patch-id: ab9b45d9ee25612d7cbdc64b176f1ef3742b0bf7
prerequisite-patch-id: 281d24dd4c2c69b29a36dd9bf0d6321c522a385a
prerequisite-patch-id: 674176a4dae4450c87ea5b46745bc6234f04e178
prerequisite-patch-id: a133392611453206e81a2efcd9c7b19b426410fa
prerequisite-patch-id: 6300333d5f43e467038425af85ac59fa9e217095
prerequisite-patch-id: c25b7c9bc1f72532c7840f2512b396a5d69cb100
prerequisite-patch-id: 8106587686aac1d3c75abb909fe327ff3a48a5b9
prerequisite-patch-id: a263cdc8dee7e90aa6a61651cfada366122bc204
prerequisite-patch-id: e8894ec0a82134a8ed3a1d9207fe293bc2ca0f05
prerequisite-patch-id: 0b500d185f49241e215659b7ad14ad3d4c46e313
prerequisite-patch-id: 16e9abe53cc827dbda98d96f534b6383cc227a40
prerequisite-patch-id: a1db8f4f93ec7b0a819f69be6da64c5954de635a
prerequisite-patch-id: 4eca9242465cb212c6f16732ce8f07dd35f47209
prerequisite-patch-id: f99ef4dbb680023e31bbc102dc6b3db350b8e79a
prerequisite-patch-id: 46f02aa3a061a142e7b99072b31788d16692ecfa
prerequisite-patch-id: 8243d7951a375c3c57dbecc8ec1226f4f8c826fb
prerequisite-patch-id: 8202535c0aa9126461ad4db029de1fb56c19c098
prerequisite-patch-id: 15b4110b62556c712345c678d0d39d01bfdf01bb
prerequisite-patch-id: 612773a38a9bfa183d19604d151ce7fd52ca649b
prerequisite-patch-id: ca18fc862cce52a33d776b46d7831391add75426
prerequisite-patch-id: 3532484f64b63649cadacf0d7437f29ec0c0d40f
prerequisite-patch-id: a501b30ca06b7ca95be7957d42d705a79a8e7f2a
prerequisite-patch-id: 91ff7a5e6fdbad2272fbbb154f2821f3a7b87590
prerequisite-patch-id: 06cb738e196d446200bf757ec19ec3fe4e634593
prerequisite-patch-id: dcc16fcd396bae2e79a1001eed0d8a403aa6bf9f
prerequisite-patch-id: 03d628dc76d9958902a48ec5ec151685bde01ade
prerequisite-patch-id: a6d887f98fe394c2cdd4232e3232e6a4f3840543
prerequisite-patch-id: 924cd31a922e5116ed4d3a3601a14df5733da66b
prerequisite-patch-id: 55714adaf3a7893c7521dfbdbcce4e0604d4e5ee
prerequisite-patch-id: 81e7d15b1b50ddb01afca707043ce831fa3ed020
prerequisite-patch-id: 9c5f76322ed2d35f2ab3dddc470428910b1b6ec1
prerequisite-patch-id: ffe0978818b8d87530e355c4c9f2299a539edc21
prerequisite-patch-id: ad4f836819bdf8c56b7c4f2f0a8a0c219067bd41
prerequisite-patch-id: 2e1a1bee793c12443aa7c00e9446d839c91b3be1
prerequisite-patch-id: 686a35e30bd7a3a89f3cd3a04eba5edde908dbb0
prerequisite-patch-id: 699039d5143b2ea4515d5907d7874bed54031043
prerequisite-patch-id: 92efe99d00df7f71e2d7a7e60d049201e6b14a64
prerequisite-patch-id: 98a9127433ab1b9f7b05a8111b77a5cf49eb1fd2
prerequisite-patch-id: fa74b16e0e362325eacd1394c6941898908f51b2
prerequisite-patch-id: 2a6f362b387bbf811901ed1eb04f358876fc2c39
prerequisite-patch-id: 3f0d9aad379f7dcd5685cd4c3e2b51331c4a19b8
prerequisite-patch-id: 120d93e70bc27931bebd5b665af61e5f1881b74c
prerequisite-patch-id: fb2dfd797d7bc60f13cc67e6e3568fa01200086e
prerequisite-patch-id: 64cb5b2345c17f5db238cecbafe2937d7f21a35e
prerequisite-patch-id: 9d6a42178bbd8b3075d93617c72fddd076104618
prerequisite-patch-id: 1c46c51ad97f52c17d94199086e81df7868905d3
prerequisite-patch-id: a7702ab11e59205d552cabc501ef8f51e00910c3
prerequisite-patch-id: d2d65253fb9d013693f3083c1b97484e1daa7362
prerequisite-patch-id: 233d5df62b1daeac6f2d90b167b7aba0cc4cc6e7
prerequisite-patch-id: 2c0acafa27e2d80186e2e67d2af2b046bbc41192
prerequisite-patch-id: c593522aa70abad3c08f53e7f7058e492bc09695
prerequisite-patch-id: 15dfd7ad6a27c4b446392edcb80633923001e845
prerequisite-patch-id: aec90e21fca56808f764f423d6c0b83361d2ed1c
prerequisite-patch-id: 4091cb9ae64a2c158de683396ec161a065fd219b
prerequisite-patch-id: d1cb5d47ed11bb333910da2febb3f46f05bf22cc
prerequisite-patch-id: 4ff4f53edea08863f2af897f22e799447c42a2ee
prerequisite-patch-id: c4ae628307b05160412b9f94e5cb52ba8a46df99
prerequisite-patch-id: 12c138030b60af355912ce7e1421c822a747b0f9
prerequisite-patch-id: 0373c556d926bf280421994011da472b09829f31
prerequisite-patch-id: c55d892426991aaff9e1cc9c0dbbe150dca17dd0
prerequisite-patch-id: baa764740571d06d83edb0e2d09941cd617811d0
prerequisite-patch-id: efdac44b3f68f6f982d2f2caaa3485b9443463b2
prerequisite-patch-id: 7d8976d282a397d47989c0834661c31fc63b04a2
prerequisite-patch-id: abcddde4a3eae8b63ce2c2f12d3906ea3c3dd78f
prerequisite-patch-id: fd750c8c6f8c9ab5df074eccf57fd54c12c9a009
prerequisite-patch-id: 15315e1df358b70e5c746d1f306936a6b7e3a091
prerequisite-patch-id: 11aa0f8557107ee29ed72e5455bf8ea2d5e60ef9
prerequisite-patch-id: a78d27ca3ee02de33cff34357f13a039dc38ca8f
prerequisite-patch-id: b659eb8b9e527fb9eb10b2da36368d59cae5009b
prerequisite-patch-id: 03b47beb7203ec2729f5eb2f54e6c3d50b9fd8a2
prerequisite-patch-id: 466eb88532f73eabf6bf273ec08b9ef09d3f130c
prerequisite-patch-id: d975d89c60a50846c8ee845811ad788d4a8760bc
prerequisite-patch-id: 415895377b0e0a69a3cf3f823b3b0c165ea09d25
prerequisite-patch-id: b78db4068c91085340264629c56fbf3ab3e3241e
prerequisite-patch-id: 733d3ed4f579961875f24fe4f714e5f490977789
prerequisite-patch-id: c5ebdb07f6d393d483cfe540ac564e07d599277f
prerequisite-patch-id: 02ea4d051bcef7e15c7032132912b517b909b88c
prerequisite-patch-id: 5974bc018531113bc5cf6870348db5f21e231eca
prerequisite-patch-id: 7940fa66934704c127f593e9896b06328a5c65a6
prerequisite-patch-id: cadfb5c8870d3439f72fc09a1eeef44207304d39
prerequisite-patch-id: 60af2bcb6f07e1f60649c8b02ccc569611bd2983
prerequisite-patch-id: e112a7cd5e45f449bd134883b73620a58240bdd5
prerequisite-patch-id: 8ee23b98bdd48ee33bf26dc97683f645db018c88
prerequisite-patch-id: d2343d0193ae4751aed5ace57f9085904ba6627c
prerequisite-patch-id: f5cd03188d23a28a982204a0c19ceb68fbd5183d
prerequisite-patch-id: 9435000506dc05ef0cbaf429ea9c7697c451ebaf
prerequisite-patch-id: 1d17cfd41f3bdab687bb9c0965169837c94aa706
prerequisite-patch-id: 68df5eb8e778a0906492977363c4e506ded38b1a
prerequisite-patch-id: ce6133a4f13f2590feaca6385ef4d15e62fd8655
prerequisite-patch-id: 405a90d08325896e11ff1d3b3694d0cba0359c27
prerequisite-patch-id: 9e2aa6cc7bad3b7bc4ce8faf2674335f6dc33c35
prerequisite-patch-id: 01310d9e7cf2643105038c2e31d5571642419a8e
prerequisite-patch-id: 05962b93e58a4d558458fa287b3915be0261027d
prerequisite-patch-id: 48c7e4e94665cfe34bf4f4f8e769333c9f3cf9f5
prerequisite-patch-id: 1f4269d979bff246fe3c9d42a2e91017f8ed1493
prerequisite-patch-id: 3472c2c95baf961ba7b8b4ce6c4ebbdfc9b86fe1
prerequisite-patch-id: 3491c1adc537c051f90b924aa0f9f7b5c237ae0f
prerequisite-patch-id: daac736d8120ca370f1e9d2cdc8969df20c05a5a
prerequisite-patch-id: 91989a7d40f55c8ea4d80b497a2dc8ba4ae8eb33
prerequisite-patch-id: 9b935b3cb1e8c4bd6d364378d73ecd881005a20d
prerequisite-patch-id: 3901db461a71abf265658a48f9cc2012aacf1231
prerequisite-patch-id: c8d6bbc940b99bfdae4e813f9c012b4d9ea3a268
prerequisite-patch-id: 6d4c4ba7f4518e9ae1b61e1d7de4c39fdf17bf57
prerequisite-patch-id: 177963e96f29c40cf10da07027d81a4c8c1e207e
prerequisite-patch-id: da8c464c841b8d8916d36a6d979daea65c91fe17
prerequisite-patch-id: cd22b82f8a290cae633433bfc8e428c58a749d28
prerequisite-patch-id: cb991741b6a4600a3b14c09be8b57d4298af4ffe
prerequisite-patch-id: 18f6c207bfdeaf92ba8db8f0aead8bbb325f3ae9
prerequisite-patch-id: 126a001f0932ef79fa40c7d458505bd209ec8c8b
prerequisite-patch-id: a0a9b2b7deb5aec054fd79dc51a7e4410f9fdf35
prerequisite-patch-id: af489c34767a5b1e3f84a4ce25e0720e55fbebf9
prerequisite-patch-id: 7cba35b5e19c029e654fc1c04330ef797852e891
prerequisite-patch-id: 83f2f0af263fea3a5e95554e8e0f9efd5e588e9c
prerequisite-patch-id: 00e77a4c47816236628d178432ae9859970ee531
prerequisite-patch-id: 63016bd7d0cc3c20b3d4349bf2f4e5059f0fa556
prerequisite-patch-id: 4dd43b1517779561fd7148bb330d66082011a8b5
prerequisite-patch-id: d2f5ad85808baab6a5a0946e4a8274012d0a14b7
prerequisite-patch-id: 9d47fdc269f6ac2da985e4487a019c1f3d2b4654
prerequisite-patch-id: c090fd6e920671da74a95f3decde3eeb085a269a
prerequisite-patch-id: fc1b3ace34337693fea5f7c3edb7bff79025a2a5
prerequisite-patch-id: 0b05e7a20c5ee3014482139db351122ddf41869f
prerequisite-patch-id: b99e761365c43669feb1351a9c3272658c38203a
prerequisite-patch-id: e2f404640ab37f2cb21315f53ec878a354e217d4
prerequisite-patch-id: 71cba6b202e4ee0ad9e19230f035bfc6455716e6
prerequisite-patch-id: 2f7ad3dcc0a6c8747ed22a834609231a11bd67dc
prerequisite-patch-id: 1d490e6a2a37eb3ab71fcd3338341e7d62f66a2b
prerequisite-patch-id: 88db67486aca0c329f7f71b4b025e62dcc371ddc
prerequisite-patch-id: 74a5351ae6fb06fd3471c31248b2781fa44fe2ba
prerequisite-patch-id: f904b46a70175e232f0c1748b2fbefae725da025
prerequisite-patch-id: 0d18cf8b503e6213bceea41439e4cd01d2dfc49e
prerequisite-patch-id: ac0b9e6cf301903e6198c36adba31715dd2aec23
prerequisite-patch-id: a5053e6c8209d48328a85b1dd4870c0869cd48d1
prerequisite-patch-id: ae023a43d49491f1d061b9dc7b4d6057d231ab57
prerequisite-patch-id: 1c6587e168e03c82486c74b28986e34a4d356058
prerequisite-patch-id: 399798d446fa8373cd83973cf8236309803062fb
prerequisite-patch-id: dd7d5f038ce82a950ba41bb2d126d7e3c4d68b9a
prerequisite-patch-id: c8d1640c282a38f13f1a96ed1eddde4b3286f109
prerequisite-patch-id: 90741c929c3bfbf0af81e9bb90e5f4a5bf10fed5
prerequisite-patch-id: b5af688757c857647b8f60fede40e5d9926fb357
prerequisite-patch-id: 687f457062dd3bfa7285c9c4f299907817aa52f7
prerequisite-patch-id: f8188ae1b7247c7f27d6ac33af6f315ef6b6104e
prerequisite-patch-id: 181108dbe14536f7b841332c4ca8358aed8b9675
prerequisite-patch-id: d17d7796076de86fc6b356b1543f4e9a27cb5cac
prerequisite-patch-id: f5f31b42605286bba6272c6c0e5c6703918f3c8f
prerequisite-patch-id: ac24dd000a2ecf55cb4da9fbc62e4834530036fd
prerequisite-patch-id: 9c69ab29256c15a0e8ac1c3b9ef64b27661c7815
prerequisite-patch-id: 2172e6b1985a2dfc18087717573e5fd57112c958
prerequisite-patch-id: 0875c307a1a2ce861fc45d35bc94f0df5ac0e303
prerequisite-patch-id: 4ac40e793584006eece15dc7721ddeb9663e272f
prerequisite-patch-id: 3fa2d318bb62a50e3e6ae40b26fcf7e7d813d3b1
prerequisite-patch-id: 0684916c9f5a202672e77f493e02fc2b40599dad
prerequisite-patch-id: 0c09bd84adbaa114a743fe794bb6cdc3b31be265
prerequisite-patch-id: bac3f1940d5defc8509826feb2cbf023145d8ecd
prerequisite-patch-id: 8264dfd08c281c430c48d8bf8cbe752d6290f5bc
prerequisite-patch-id: bf67f494f33c51ef174060da9cdf89514f901756
prerequisite-patch-id: 3e4d0cd28394e1e3ae275bfa6efe39467b0f3f6e
prerequisite-patch-id: bee463b0db433da3ec2ca7b49f863e0950f4ecae
prerequisite-patch-id: d40c7101a029fd96357de30abe77282304dd3627
prerequisite-patch-id: 2c14e1022252814e79e637dee274273d4ceadaa0
prerequisite-patch-id: 49475e45befbfb46a7f1ec5fd78e53b58ed57c8a
prerequisite-patch-id: 31649e5e4f1d66c09a764356ae2d677a2d02bb82
prerequisite-patch-id: 2cb61793e4ebfb3766951efe1d5beaf7382099b8
prerequisite-patch-id: f165ae261eb6d565977b2369fb39d793f3b2e7af
prerequisite-patch-id: 53f7cb1505669a96a09585a0f04e1c79fc94e596
prerequisite-patch-id: d84d6f9d7f8f53dec08e5e240fcecdc97f8a8397
prerequisite-patch-id: eb9fd202f56cc2b8ce0819cf6f79d337f753c74a
prerequisite-patch-id: e539f1c8c709a26ba07b515b30187f15a1e80946
prerequisite-patch-id: 05761ba81a60349abcf794574ac14cbb39be7bb2
prerequisite-patch-id: 72abbacd3b8a249930a2fd18eb25805886cba401
prerequisite-patch-id: a4acc28e41f129840397c8e199bc111debbfa07d
prerequisite-patch-id: fdb0fb232496c1ce276767d6af8341669c3cf45e
prerequisite-patch-id: 4f0fb947e69e20d3e8d33c63819c0c4414d2cbf4
prerequisite-patch-id: a0d0e6d841f743f71900d394334811ee0537a969
prerequisite-patch-id: 785d540ff19356f18db259f0bab627e6f2d78f6e
prerequisite-patch-id: 6adecfa3cfc6d977fc979fd6197db4424758dd2c
prerequisite-patch-id: 803ab4447c3673d5c10016d597bb03619e66c146
prerequisite-patch-id: 9e2f9cfc9fc687e1a4c40c99e819f9f5e33e0711
prerequisite-patch-id: 5aeec2d2fa8cf56ae8835886a009f943b419e3e4
prerequisite-patch-id: 79541e401ab44d1c1c6877ab19cc95c27e95a474
prerequisite-patch-id: 4f84ac90fb0e890466bff297ad78bf51319f72af
prerequisite-patch-id: 8a9e26323c51d2e6287f1361fa7c28ac2d784e1b
prerequisite-patch-id: 2b030bdb0d22effb813f1b9681085ebc2f2f2664
prerequisite-patch-id: 9ad62b3b28253e53294157f8291197832e7d8e65
prerequisite-patch-id: 456f56da07eb6b2a30a34c8d63aea7f196fc1fa2
prerequisite-patch-id: 25fed487e0524d65db923d102f89d6c068c36083
prerequisite-patch-id: 434bab87127522f0a2728b7095339a0e32c2b700
prerequisite-patch-id: 479983422807a135930d1736871f75aa7cf23027
prerequisite-patch-id: c17a9236e255f5e346e3ff8b4fe9d799a2aa02a7
prerequisite-patch-id: 24339d05690631e2b93c4e3d52732ff9a45f3380
prerequisite-patch-id: bc12fc9f6037d5f625ee876b98b076a18d47969a
prerequisite-patch-id: 828d6921df5410810ee8a9beebcb4e1af233ff53
prerequisite-patch-id: 13276ad89973aeda0dd56c45197495d3cd740daa
prerequisite-patch-id: 3359e7004ba42a3c427787f11454e9ae390b1bcf
prerequisite-patch-id: 79aed3c55f9e187ee55e60c4fea53d2cb435e5ca
prerequisite-patch-id: 338f2c298315a176036b865c24d229900d1cf50b
prerequisite-patch-id: 2f195650bbf8210a01042a4e5d423887a058542d
prerequisite-patch-id: 3b8b0230dd7706cf885baa1948b05a500b746f87
prerequisite-patch-id: d214040689f735e69f7e44e1a4dec918e70fbb79
prerequisite-patch-id: 838618698ca5e7eee6163c5956da1cda93d39586
prerequisite-patch-id: 61a6e600983ed288b6bd5e7e96fb48ecf3e82c33
prerequisite-patch-id: 0a85cb86f55fa48a48a905e56332f8d77fab9bec
prerequisite-patch-id: 9a0fffaaa0333fe5175322b0cf7de533f66d4c3e
prerequisite-patch-id: d70a7663b58be3836fbbc606960bb17326db40e4
prerequisite-patch-id: ee6124612502c62698fc9fafcd6c643e8620ea63
prerequisite-patch-id: cdaa1a70a7f9dc96f11a7f3e48985c79b9c98363
prerequisite-patch-id: 5fb354d3bdb181b10a4e30db13081d8f8af89c41
prerequisite-patch-id: 35b60378bcefd98a468576d8430dff11b5f4071a
prerequisite-patch-id: fee1b865727cd2f2f7ba69fd687fe17ae5443102
prerequisite-patch-id: 5919b09177f14550714f9b5a0da6c5380cb13964
prerequisite-patch-id: 9898d861a8983ea29e69b7efb5a2126b7139c3eb
prerequisite-patch-id: a895bfa9724cc83264207b74d4d029d7a55feb7d
prerequisite-patch-id: 5ccaf52fd51872c0b606d4236a9150fd80d0f811
prerequisite-patch-id: a42977889d0dc086a41a9f42e3ad1f114c75ecad
prerequisite-patch-id: 70bac110957684749c27f8fdd1def1f2617a305e
prerequisite-patch-id: 3b4395c1b7d8de6c9f7f8656a8f9c53a56f6e4d6
prerequisite-patch-id: 81e97eae0ff755bd326329261753dcc1e0fdcb37
prerequisite-patch-id: d9f7c33a246d69c420a6618fe24d6f2db102b182
prerequisite-patch-id: c2dec707462a232fb68185c78f37485b60bbc2f2
prerequisite-patch-id: 51a1cf0d78fd9bbdde11ed23327b3a31e2224c7b
prerequisite-patch-id: e25fd088decea5e643dcaa96e6b495c1863c51d0
prerequisite-patch-id: 51df2408e1cd3f9ccf99c4565452104cc8cd0c72
prerequisite-patch-id: 904e76cee06144b024033ed83484a232176d2163
prerequisite-patch-id: 8b8c0c15e34b6e54616a765769dae9013c5785ac
prerequisite-patch-id: 28f6379e898a37b0224479e992810c68f7023fb7
prerequisite-patch-id: 049ddacb3d39f97b6a768cb48893fa44a22eb358
prerequisite-patch-id: 9b34e145c1ed6f59341269cd8228953c71da1672
prerequisite-patch-id: 0129ccc0c12659b2808359ef523bb2cb42616d20
prerequisite-patch-id: fd99a84dc0650d70d6506b9e098ac0a3b9afff09
prerequisite-patch-id: 2a8cd92ddd8f3c31c338b5e47ff44316afde41fb
prerequisite-patch-id: 015ab8fff70b72f91a810a1109b77732e9537c0f
prerequisite-patch-id: fa5e4daab3b50a52d5e5117c9dc850095552f3bf
prerequisite-patch-id: 72025265eecee0d2f818797a6e32d1d3134ab537
prerequisite-patch-id: f9a9adc4dc0cb798d14af9a2dcf80e76017f2952
prerequisite-patch-id: 8eaf59439eebe8b15e6a1f947886433ba570fdfd
prerequisite-patch-id: 56f9ea760e5a762f5b95017d77d99f9c074bf8bb
prerequisite-patch-id: edfd9512ac1535fe6ae63484b9fecc4822ceb02c
prerequisite-patch-id: ffdfc7ec39dad622f67fc216713ffd5870e0f34c
prerequisite-patch-id: 98b9e965f0321b8c44f7896d86552813c34b3452
prerequisite-patch-id: 41c1f9da607f4599f0a04cddf8cdb31729499010
prerequisite-patch-id: e4032c0896be75d4a378b2b1d308d0a0ed36b2f5
prerequisite-patch-id: ef286096f4d95440368dded4b925c94337c7e490
prerequisite-patch-id: bc0497bc4433100adb7af298a17c44ee1f2eb01a
prerequisite-patch-id: 23603e173399914b6359006300de1966840770d8
prerequisite-patch-id: 3578fa4a5f385145bbfda4a9e590a471f52faaa0
prerequisite-patch-id: 4c8299696f614993bfb6fbc5f964e531eeef7d4c
prerequisite-patch-id: 54f7a7b4e61ac72bbf1d99e832783003940cbaf0
prerequisite-patch-id: 2439a90fce6c959a49391c2bd8e4875f984f69bd
prerequisite-patch-id: 3cbe67d504ce85476dd86888c3bc30a6cb7f4edf
prerequisite-patch-id: 6eeec978f54b464566d16dfc8121b461421517d3
prerequisite-patch-id: c64fedb72a6e4c909ae756e11549f2a36a466087
prerequisite-patch-id: 2dcfc7652530a50693057e5d40f4781bfe8f630d
prerequisite-patch-id: ffa3767a373ce7666240fe48d02c9040f9076ced
prerequisite-patch-id: 60b20c3fe7c54f703b266c0129709bcbdfd803a6
prerequisite-patch-id: c2a251c89a0713deeba501fdae4ce778f8105d10
prerequisite-patch-id: 4d4ffeb4636686fbd91ad1084ceb10b29140a54f
prerequisite-patch-id: 81947f5c8a8775f457756bb5ec5a569a931a09d8
prerequisite-patch-id: 7299ec74d6b12ef8e8af2a332ce5d6a2db867972
prerequisite-patch-id: 381b02d197204cca4ce99ff69831067aae3d22d5
prerequisite-patch-id: 62a51f345f5f09c7843638fb4f4689f96386f4f0
prerequisite-patch-id: aad0a5ad17ce604909e62b41fbca4cfea45b35f0
prerequisite-patch-id: 8ce640e95f2b08e5fe2b7eedf50183e17d38a388
prerequisite-patch-id: 1128445400dd56d61418864c904fe5353037a810
prerequisite-patch-id: e1f73ee89c430903e4cbd0b15ed839d2a48760c6
prerequisite-patch-id: 0f693013e4a260cce9a85f929ed3631e2efe7398
prerequisite-patch-id: bdb5b161c1ade5937aa07fca0ff71f0594d11683
prerequisite-patch-id: 213d1e00b59b04adc83954fa3e82c7884fdb28d6
prerequisite-patch-id: db54562161432d8067eea31af1782c5459ad7b87
prerequisite-patch-id: fb144649b328072b6b8b12509889152f36132140
prerequisite-patch-id: be757b4d2c2f088e35c6a83abb4eba3d8416e002
prerequisite-patch-id: 01621449c2141494c4504659279729f039702d16
prerequisite-patch-id: 73a264ea3cfa4f0ce2a413539342e8faecb3452f
prerequisite-patch-id: 4129ddb8512bbed8e54f006c93ef3fa8a4036a8c
prerequisite-patch-id: ad390dd35755255d3f27e626e0d9a3eb0f0c886a
prerequisite-patch-id: c7dad40d58f4a00ce8d368efb138bab046e3576b
prerequisite-patch-id: cbb7a5e6e13cdc2bce85576f0cfe6ff55ab25730
prerequisite-patch-id: 3665589a1bd5231cb1e96e4234683c0c26bd9974
prerequisite-patch-id: 07ee4326e747230fe5c6cecc0be01249cbb13852
prerequisite-patch-id: f254bc36f2665e1f6ef70aebd76c7b7adba2886b
prerequisite-patch-id: 885818417fe6cf10f63332b1a0399f781dbd9abe
prerequisite-patch-id: a99f21301645f8247c3f833a4c3ca1a28f444d41
prerequisite-patch-id: c227be27c7e85a2d4365eb4f0e279f7c69d472c1
prerequisite-patch-id: 7a7d6e6575162d2617f8b641ce6cece5c612c99f
prerequisite-patch-id: 4e8a973dcd14357f03c59f506939f56ba02543d5
prerequisite-patch-id: eb744c4baa4883192e2dac750795243353e5e167
prerequisite-patch-id: 9079b61f2c4b4abb8fcfc6c42fddefa8b6f74709
prerequisite-patch-id: 8ef47d943a398732f0eeb60e88a48afa0cb8d0e2
prerequisite-patch-id: 4d9bea00cc3d0523afb5b01c5e1a37fcaa72517e
prerequisite-patch-id: d0e577372894140a12def8f2d3c652af0c49cb19
prerequisite-patch-id: 7cc7990c5e8ae3739f3b2299e274665d5ad5295f
prerequisite-patch-id: 2d2536a5ac7b076bee2d5d1f0524f4e2ae417169
prerequisite-patch-id: 5cfc39734761a05f600ca882add101e42709e9f1
prerequisite-patch-id: 52d0d96589082483abe71c6dfb4d4e6252145647
prerequisite-patch-id: dab603f790786fc1f65a88ef39f939dab5126daf
prerequisite-patch-id: ad893bca09d6a6a35c104caded248e8287e76686
prerequisite-patch-id: c0f52b134c1fceb22b7f4e712b0de5f09bd7f60c
prerequisite-patch-id: e07ad3d3d887c297f1a3f2ccc24f5ce2a42aceee
prerequisite-patch-id: f74e1a7119c1e2ceeb38ef4f988664609876634c
prerequisite-patch-id: 2afc9c0b942b6ca707f25828d001f909c85ded87
prerequisite-patch-id: 651bf6c437c09bf2c4859f58db728fd192476ffd
prerequisite-patch-id: 333df5ae18ab11681a148b594850f6cd6e1b9a1e
prerequisite-patch-id: 393108d52c94f2a0d54981cc74bb831f379651bb
prerequisite-patch-id: ba4bacfe4aa702fbbcceed1e27efd62a8db7243a
prerequisite-patch-id: 8b0b77644be4252082faf0fc94b0d4a313e852f8
prerequisite-patch-id: aaf50da17c8de631d3bf9046f1b555a25d94335e
prerequisite-patch-id: e86a103833cb2d296300f2b616ce3a098363f898
prerequisite-patch-id: 288f8e4d99d446b3284f54d9e754855e55cc8461
prerequisite-patch-id: 47ff4c4618a39fe9b3ef7942faf4b243bd2860bd
prerequisite-patch-id: 0a2d57eaba4d8fa710dbba1eb3603a76ce780b88
prerequisite-patch-id: 7e6cd8a73ab3951d570b5bb037a406494839c863
prerequisite-patch-id: e16f5c55c50ca7b6fa0f00770814f80e49c80b4b
prerequisite-patch-id: 74b764ca12f3d1558bba3e274d5f4237d1afc2ce
prerequisite-patch-id: ed5d78e6948072eb559f8b7d2ab4e729e008d358
prerequisite-patch-id: 9640626fde57d6db07ca1bf17921d78ca70cf998
prerequisite-patch-id: 59d9c785d0352c36f7b2eb868ca85a58afd8b4ed
prerequisite-patch-id: 5309e91edc0654dbe73a12f5bfca1b33ed16475b
prerequisite-patch-id: ac83ac8832ea80fc3e45af64c7005d9639a7a656
prerequisite-patch-id: 349b9184dcef1324f6244631e78b4d521ead13c0
prerequisite-patch-id: 401b197a694e51f329afb92d154f33456c6ffd87
prerequisite-patch-id: 85fea71f01a0298b459d16f89ef09f9f34e50867
prerequisite-patch-id: 997763614677518cc9ec7cecc5f2dedc67515792
prerequisite-patch-id: f97c07999f617d01a2c57c27353219887433623e
prerequisite-patch-id: 3076c4903ec3915663d665abbf11f2e0afb22448
prerequisite-patch-id: cd617bf7dea7be9ebe1c35f64e6ad76924ca8711
prerequisite-patch-id: bcb51e0c5aa5d8a38442d26e0e292f2d5ad55ffe
prerequisite-patch-id: e8dda987e165831cca5780e2c0a94e40b72bc8da
prerequisite-patch-id: 8f340f357b2e5fb17a6cd56d2fb9683a1acf1b69
prerequisite-patch-id: 421b4cd798624dd42db2c11192360874631b5255
prerequisite-patch-id: 5e2727f001f8dde8cb8b6c99ec790ca60a774876
prerequisite-patch-id: 0b9ec2a2d835ca0aae6791387f4ae02de05f6008
prerequisite-patch-id: 572737058491e90bc159b3a93e3f4114f7fbff97
prerequisite-patch-id: 870af9796c09171c643e24c28a4bc55c1aed9768
prerequisite-patch-id: dbe79a69596d7c8f07e2e59bb240641d16709010
prerequisite-patch-id: a239faec8e4061f00e559f60c086426befe0bde1
prerequisite-patch-id: 61eace2850dfcff6c2a6adf8cc3529b4278841a2
prerequisite-patch-id: ac586715f8cbd86bbbc6f39fd75ac87b17af18e5
prerequisite-patch-id: 0fc60015248745a3059cf69bfa288714270e5e92
prerequisite-patch-id: 2a2df1900255815340b0b71ed3786c918ef71f49
prerequisite-patch-id: 36a43080d7c4bd0c81a44d3db186d0b7efc71edd
prerequisite-patch-id: d89dedbbe97ae8e69e801450decc0ce3af7fcdd7
prerequisite-patch-id: 1f50ae2ad34f2ea1b76163d048d430bb47efdac6
prerequisite-patch-id: 62897a326cc510f7751125f09cb24f9b7d5c34be
prerequisite-patch-id: 1c55aea2f76ac3f0b446fe7d222999c72c0c5cc4
prerequisite-patch-id: 37bdaf023828314933fc729ea58ed0fe50c790ad
prerequisite-patch-id: 1410fadf62ef1d6a09f06e01cdf6aa048f3651aa
prerequisite-patch-id: 3f91bd100cd6df5d7606f6b56a3557a49926ba2d
prerequisite-patch-id: 1d1bbd1a3c1e8bae76c4445336d82a600b8b0453
prerequisite-patch-id: edd73f6ada7c1f0aeaed66840dca437a5bd3a13c
prerequisite-patch-id: 1633bd15f563bc7a3f7d5e232bb01a8e2921e910
prerequisite-patch-id: 0562b01ffb064120f1e70c86c8c94e91a9d01f3b
prerequisite-patch-id: b8eeff1d5deedd7c351f020ca94701e4abd2d816
prerequisite-patch-id: 9c76d37fbcaf7d7f813bfe0fb9fd233eca74f010
prerequisite-patch-id: 07cd9135d3ceaf77b3546c651d76be99dca94fc4
prerequisite-patch-id: 6629318d42268b03ddf5aca1358aaa6a5a857a8a
prerequisite-patch-id: f83192c3ae8626cde4d2bb127b3ed3cb0a4734da
prerequisite-patch-id: 171c9d0ce3fce1999cf535a11822ea098cf67a7d
prerequisite-patch-id: dde64d2764b324ae54f00601c60d17081794e44f
prerequisite-patch-id: 21699b663f4e38235059644cc4b1ae8c979b109e
prerequisite-patch-id: f0636ed8979f137ded7f0f0659ad3794c882444a
prerequisite-patch-id: 6e7950988a17dd9c9a7d9f0794b082aa5b03370a
prerequisite-patch-id: aaebf9f0e675f86b1bb6c6bd00edfb0da92bc112
prerequisite-patch-id: e534020425097dafc03a19e85eca5a9737a1ff02
prerequisite-patch-id: b4c54f53e723384d6d9bf827f44e215b86546e03
prerequisite-patch-id: 7c2f5b720b1a0491714d1b2093ad8393e6cf8e1d
prerequisite-patch-id: 3bd8ffb54e788b85eb0e9c84b298116ee3f3cec7
prerequisite-patch-id: aa1ef32cedee895278b4322fc57099e9e0716340
prerequisite-patch-id: 7f7fda09999a109c24304cbb6df39887897d1bd3
prerequisite-patch-id: b9f875121758155984abf2d2718224b79b5ee09e
prerequisite-patch-id: ef97f8d44dd48d29c71a93925c636d9ee8da5d8e
prerequisite-patch-id: 779c32748e7bb42a86759175668692c2c6ef812f
prerequisite-patch-id: 8b448f5cc05bf6a526ece463d3c956a680f27cb1
prerequisite-patch-id: df7f42f664bcbca244b7e2fab3fecb4ef7b0c01c
prerequisite-patch-id: 39852613a67d29ece8065894a5b4d5032bac0931
prerequisite-patch-id: 50069fc3e17076eb623a18df6326b1e8d22e5f50
prerequisite-patch-id: 93518f23fca523e1684bef2a0e012ea384b3beac
prerequisite-patch-id: bc2c9deea5aeb7efb08f66438147ec43cf64f1f8
prerequisite-patch-id: 320bbb3911e451ed0289d10e79856ee77fd4ecf2
prerequisite-patch-id: aa28684cd2417d275d914790424025b958f26746
prerequisite-patch-id: a0e1bf8d413e8e6ba676f23db6f080196226fb80
prerequisite-patch-id: b72d92f139968a07b245bdfa52cf546e7351a49c
prerequisite-patch-id: 1e9cc2c9a90a3b5fc42e62041db3b20967d6ead8
prerequisite-patch-id: fdb9f1357e72be8c4bf1bd05956147b982ecdfa4
prerequisite-patch-id: 4d5d04d3bfe66f15cde7f44365f2353f0bf051e9
prerequisite-patch-id: 0d04e22a678be11f9f313ee1e85ceea0dd78d1c4
prerequisite-patch-id: cb616eb99372a342ee9d9a6d1a172582b7976047
prerequisite-patch-id: 88378ded81dbd1908692d07872e21d9644d78ed4
prerequisite-patch-id: e049598e87c705e65f4425787036a4a9d8948e2a
prerequisite-patch-id: f50297733904f905b3d8a7619a3ddb5176398b16
prerequisite-patch-id: b938916d9e0a12e379a828693763099a1584dcb0
prerequisite-patch-id: 1ecbd897d0cd24981ed6c48f83dfdda9ccfdd4b5
prerequisite-patch-id: 828ccbad7dddec79381e807cd70f4d8c1dcba947
prerequisite-patch-id: cc6f89802301f80840def242d5157dacc07d440b
prerequisite-patch-id: a580651bcb0900366651ea322b50aa1e160af9b3
prerequisite-patch-id: c1eb1122b99dcdd77e5621583a440d78084014b7
prerequisite-patch-id: d4756527370ca751c9b10e36fa5a09477112ef39
prerequisite-patch-id: 936b9fc5a32fbad22717c810507d4134dce91bbe
prerequisite-patch-id: 5518bd814559df265b7ff6347b39337446a3c03c
prerequisite-patch-id: c1a5451c72bd735189db6154284a7ac987c3885e
prerequisite-patch-id: ac995cd72f720027356556513cdad88261f44963
prerequisite-patch-id: a0bc9e46140020c97f9faf410e9a4896ec7f33d9
prerequisite-patch-id: 9095c6c751b1d317493489e3a479dda667e1b86c
prerequisite-patch-id: 5142e7a8e59f4f8dabe9e9ee37ff3dbbcf959ede
prerequisite-patch-id: e913c4678bb5b03d98f7d45156a3e74d3328e76f
prerequisite-patch-id: 82ac4e011830c47339757b7cf4f407307baecd9e
prerequisite-patch-id: 29fe651c826f6e6046ee86ff1844695c728511a4
prerequisite-patch-id: fe9bd5ba72c42c08bdcf74ee352fad0af577c13f
prerequisite-patch-id: c9e708898c3a9af39633c2f20b4122251b3c91ef
prerequisite-patch-id: fff1a17b39ed710a70b641afde21b3a581379400
prerequisite-patch-id: 122d16f25b19eac7dc7297bd30b97f47c971c10d
prerequisite-patch-id: bf3a93084657ccce1f37abbd5e843ce5c7e299f2
prerequisite-patch-id: 2f0130d3267bd76cf5e233c7e4b6cf3a8d9393aa
prerequisite-patch-id: 5373530319726aed780d23635822bb2f1a4316e2
prerequisite-patch-id: a100b83853aaed0ddc585bead9aafac53040501a
prerequisite-patch-id: 028cabe2f7d22cf3e9edfbd156233c0830fdeb54
prerequisite-patch-id: a355b134a85369922ecf1f11386398c5b462c05a
prerequisite-patch-id: 7aeb26abd51d94b380ffd806c61c237d9a01672f
prerequisite-patch-id: 3771fceb35102e13c7bd72a9ef6c1b487fa0f758
prerequisite-patch-id: 80dfeae0371c0610bb008ca8ac8f7dbb5d1336a4
prerequisite-patch-id: f4528ba72f0fe20de6601a1105e86e8156ea3c24
prerequisite-patch-id: 3f574c898dc327ed60f36548d8c602d1470eea55
prerequisite-patch-id: 80814f5bd3520a99d9eddbbe09d3c7668ecb89fc
prerequisite-patch-id: 6783b03eb02ec3d3231a24796780eae3a2e0bf76
prerequisite-patch-id: 24ca1edb8009320dd46d25d33b932adedf68a098
prerequisite-patch-id: dcf78688c6f8cce41db7a3e909622c31bdbb611f
prerequisite-patch-id: c41317b0aba4b9c046fec19e2e98e11ddb1466ed
prerequisite-patch-id: da0eb892b419b76ae6d252c20412ccb72623ae43
prerequisite-patch-id: 0c211bf0e6d3c78a80541a89bd9002dc600240be
prerequisite-patch-id: bed12645d56c18f66ebcfe012f5ab17d55cdd575
prerequisite-patch-id: 00043f7c019b65ee22b55866764535c2b77233fa
prerequisite-patch-id: 8906ce7ad6e5f049771a162092159555060334ba
prerequisite-patch-id: 9d6605b624304f4dd0395d1ec2ddff155e705f86
prerequisite-patch-id: b13e45a0672a5a8ff3d8956d6e7ebfdf404bf067
prerequisite-patch-id: 8eaf4829f44c68c8452999c9fc856d2106f73353
prerequisite-patch-id: 8255dee9736cbfaea7f03e2577d8e6f6529bfd57
prerequisite-patch-id: 6e89847f13fb66be330096e35c0bd88a84370af5
prerequisite-patch-id: d6b1bde92b1861ebf717ab0cc96ae475931f800b
prerequisite-patch-id: 6507813b8837bdf9be99009dacf44a35b2364c5b
prerequisite-patch-id: e1db03b6966a2c02a839317a5af9e491a22d4089
prerequisite-patch-id: bba3960ce2d1cdaa4d4a201cc5035b2d126ddf21
prerequisite-patch-id: 5ee81609aa371d061d74f5202bd1842bcb514c01
prerequisite-patch-id: d4ca9e3e40265ed6d4370e0e8b47aff71f7624fd
prerequisite-patch-id: 951178459ecfeab13ccacc215813ab8f24450895
prerequisite-patch-id: 92d48c455fa2c60fa408b1f2ca7ab700c50dc331
prerequisite-patch-id: 2d9299b48e03c105750e61568c333c330c8b140d
prerequisite-patch-id: 1edea525f32aa0205102285a3821de55382b5783
prerequisite-patch-id: a53bad297d66d3ab8515135181d44e3cf6d10943
prerequisite-patch-id: 13209f9778b522e9ee4befc1777a873c11865111
prerequisite-patch-id: 12261d35fbcc7a6fd5ca8ba995add9453528f3a7
prerequisite-patch-id: d3883e11f8d1556164cf15348fdda0f77287db4c
prerequisite-patch-id: 8868925c178bb3435b6a4efce0e7d5270982ca59
prerequisite-patch-id: bd842166a03fe77457b98ba2bb910ca1e51da104
prerequisite-patch-id: 71eb7a9464fae2f01a31da4a37734610bb70a0cd
prerequisite-patch-id: e6b4ad227f2ea880db429eefbefa1499a37d58f3
prerequisite-patch-id: 3e518442c6dcecf3164dea650cfee134c47d01fc
prerequisite-patch-id: 809fd3130a243a853071779d20e549fc13d114d1
prerequisite-patch-id: 65ad1a6d1e39b8b0ba2c5cc272c1b8318d18d04f
prerequisite-patch-id: afb8e58539c2c785f5629c659cd247f369ef623a
prerequisite-patch-id: 383375b53c7d7d4942d3efc824370bfdc89b6fc5
prerequisite-patch-id: 357d03752cdc13af096f856c8a4e5d662e0b9121
prerequisite-patch-id: ed0f079b18dd7b2032d0cb7b289527131dcb53fa
prerequisite-patch-id: ef0728a74fbedc2f828b52c86a68996e802f8ff4
prerequisite-patch-id: 1aaf0f0ca1dbd73391d948027a23e521f76c3a86
prerequisite-patch-id: 8136ca6e84cf9a441c645feb36cf46baeff9fd42
prerequisite-patch-id: 16cfcca96d443904830c808577724d6a6debf5ed
prerequisite-patch-id: 201005aceba16a7de8c37c4ea436f54c366b7f39
prerequisite-patch-id: 1a890a8b71972c298d32446dc7b4d2f4c4e4b6de
prerequisite-patch-id: aecfa951e267d70e5baa2d3ae91777ce6473a419
prerequisite-patch-id: e350596275413000b9f63d75cbd5f6fc81b02d6c
prerequisite-patch-id: 834adcd22251bce2e190610fc8a3e750cc078f15
prerequisite-patch-id: 98c1cfb647db3a2ea6d3814baa77a39389edb38a
prerequisite-patch-id: 34d8762f1bacd0c08717c6ad121a279f8cff2819
prerequisite-patch-id: d6d4e355f2d16d85f1e6047080df1984ed571abb
prerequisite-patch-id: e9c54d11487d86092d3555a1460611ed8d6f7964
prerequisite-patch-id: b543801b9c765fb03d33bc5c2daf75b61931609b
prerequisite-patch-id: a4bdb1cde999f8a18cdfedb82c471c32f4b596b3
prerequisite-patch-id: 50166f25ba60236a77b448332cf90a175a01fa2c
prerequisite-patch-id: 7c9ea6429a16fad6290b9f0d33dc5185e5e908ae
prerequisite-patch-id: e744de13d5f13cb094af2a2d588fb937e7d029ea
prerequisite-patch-id: bff8c5fd0e47c08327bfb75905044af32c7ebba4
prerequisite-patch-id: c42943bc8ba6e7465b9790c18303dd3afb27132a
prerequisite-patch-id: e9090773997a0709db366b76887550a38764404f
prerequisite-patch-id: 80b7b6f01b8d9ac9709c8d522ace8005c9b70627
prerequisite-patch-id: af1fe5b16a293dbd3884dfe37826dc738bb4f27b
prerequisite-patch-id: 7d5f61570c1693fc89cd091e157104b40e3672ea
prerequisite-patch-id: 887739af83f8baad34acd9271a0ca4369eeb0c29
prerequisite-patch-id: ef8a1eab1482c3378a5b169fc6bb11b4b7a3ac67
prerequisite-patch-id: b25c7d833b2430e590dcfb86004dbdcdce7db095
prerequisite-patch-id: a40f284faf8083a83662b322ad623aef91749873
prerequisite-patch-id: 07101d9823f16c8c8a9333188b3f478d544cf9be
prerequisite-patch-id: feded814d9b07c85d73cd738e70b1adec6341cf1
prerequisite-patch-id: 9ee4c8e6e5b99773fb3816662c5da5e8ce31176c
prerequisite-patch-id: a0c92befeb53931d06fe081c1a1a45df197426af
prerequisite-patch-id: 013bf5829de87bd639c2ea05b32c95ecaccfc1f2
prerequisite-patch-id: 02602709f88ccdd927e316f772d5eb6090ea7ebd
prerequisite-patch-id: a95a3a7d19f909ecfe05caf78a67191e1ae9732c
prerequisite-patch-id: e8a5862557c6d1bc048838de1ae120993f43a52b
prerequisite-patch-id: 80b8d55799e29498985fd43e7138db8df0b032cf
prerequisite-patch-id: 4df50c40a239db9a9a39f498840b378dfc8167c1
prerequisite-patch-id: 95b972165a07e8f275e81ee4369f5ffef9b5c618
prerequisite-patch-id: fb56285e4d2ecfb1eead7be7c25a360911cf771a
prerequisite-patch-id: f0c93a54a0e842084b390232cf2db38be55966ca
prerequisite-patch-id: 10801f02fbed7af16379137e246339dfeb5f11cc
prerequisite-patch-id: 9334b5f13248712c8dab4f7c4f424a062b6f8e4b
prerequisite-patch-id: 099303e23ec6c98edb5f481af8d4647746d2af4c
prerequisite-patch-id: 703111107cec74475ae02d4b310f994e4580413b
prerequisite-patch-id: 527f540a0c66f2de8259b5a4eff24913408be983
prerequisite-patch-id: 80297f394a88ba4a8551c470c2e58b6b2eb7e258
prerequisite-patch-id: dc7f98265520b10ea720bf55f08d5f5001226d7e
prerequisite-patch-id: 7645063be1176fc0f4ba0f7106dcffd045bd9b2d
prerequisite-patch-id: 864d74217daeda86c1ced1e01d7dfd368498903a
prerequisite-patch-id: fa696da3fd49409371d072bba1ceef80f578470f
prerequisite-patch-id: 10af6277e3a9d5cdd8465e94ff18a63c0702b3e4
prerequisite-patch-id: 7080615c917cc95d6ca475df5788afaab77471c1
prerequisite-patch-id: be11e7674c0050d61d91354b269dd3bf46970af5
prerequisite-patch-id: 62dbb80b2052c542bddfec03e271bbab8b76633d
prerequisite-patch-id: cb43b11c0ee524aa441b8692a9857c7be0be47f9
prerequisite-patch-id: a2b5d1918f803bdd2dcd895111d2b2834e5e67cd
prerequisite-patch-id: 749b18b09b379a8757ccc5c4c06cf4f941f3eb9e
prerequisite-patch-id: 4a0fe962940c404ffb357c417fbdfd8a83a6ce0a
prerequisite-patch-id: d31aeffb821cc7b1933013daa5347daaa66e797b
prerequisite-patch-id: a818f374046ca2896c5f836f45ea9de911d7df32
prerequisite-patch-id: fdc86c82702c1cf336802732dc9c87135e776bc3
prerequisite-patch-id: 940842f5fd32fe4db8da16b3be1fe0fba3bf880e
prerequisite-patch-id: da345c93315d5dab00d9bbb8154821889e1e0f8b
prerequisite-patch-id: 42ae4a13f23dc1e0642db5da46d26b6a43ac37fa
prerequisite-patch-id: 4a437ad6dc58cdea48d201cecb7b892516bf3f5e
prerequisite-patch-id: d109c7ee433e3b736cac45e2e972442efd31ef12
prerequisite-patch-id: 33ae9b8531bd49a11c9d08c9db2704c960850ba3
prerequisite-patch-id: fabfc50bbf9c39402140d66242fdf873876da5df
prerequisite-patch-id: 3b9ace38b0dc8cd4043827d2d9ca3d27fd0c2ba2
prerequisite-patch-id: ee78447f7e6d9d0d47c983df95c89e49b7e414bc
prerequisite-patch-id: 32fbfbb6e8aba41a25cfe9e23216da889ae61da7
prerequisite-patch-id: 68bac560c80ed766a0eedf8e48bd8447bb05ad75
prerequisite-patch-id: 14d8836b75d09fa17e11771f97367e26830b742e
prerequisite-patch-id: 3723099c138e943a729057f5230beca7c39e3c7a
prerequisite-patch-id: 7423c9e1165608f4e634a2d2edbfcb624021aabc
prerequisite-patch-id: bc280ef369243e7247d77da42a6ef3be9006df37
prerequisite-patch-id: f5b164f6e7cdbc3d3d58bff87392fd32657900b0
prerequisite-patch-id: 1140ea6f713a1421721c5a896973de659c2a9497
prerequisite-patch-id: cfc7c2502923cae295879699e420d1deaf329b5b
prerequisite-patch-id: b7825abe4e32b8b656487d47640001cfa6b6e2fe
prerequisite-patch-id: 797195fdd3f776ad2190f4f3902e0fbc6e092e12
prerequisite-patch-id: 7d5bc323528553f11fcc308688a8ecbcd7fecceb
prerequisite-patch-id: d8854323a1049b7f57e537b0ff28b15e6ee49586
prerequisite-patch-id: 6d8023fce8404e9dea6549a1e5f569e257423cc8
prerequisite-patch-id: a38484a816d3b67a302e7aedf3dcc7a861820686
prerequisite-patch-id: e93d49415388a7c1ac374b02a99c0614f249ce7f
prerequisite-patch-id: bf80ffb3b3f5b0e2b3158428807c19fc9d32075d
prerequisite-patch-id: fc9e4136b77f1d51a04bedbdf5adc31f325dd7ab
prerequisite-patch-id: 98a7513db9abe6f0c8c0713c9e03bca09d99af6c
prerequisite-patch-id: 771f1a8c96924d908345348016ee6877bb42cba7
prerequisite-patch-id: 325012705602dd29a534ed83cf97684b96062a6d
prerequisite-patch-id: 0df704fc2027831c95831c80fb367079a3bd8ae0
prerequisite-patch-id: 0f40c1aeea3a1e811b75889a3c7276ba40d13c39
prerequisite-patch-id: dcc6f0678993b9efc93236ce474a3a650c4e1bbb
prerequisite-patch-id: 13d9caddc3ecdd4a6f96daa80a5135add3edb4be
prerequisite-patch-id: f47ca670b3c7ad6f454ba781db41ee7202e2a0a1
prerequisite-patch-id: 422311f558a94eec68385d0a509dbab0dabc9b13
prerequisite-patch-id: cd4aacfd35cf3c151f53b16e1c7cc654d436e537
prerequisite-patch-id: dfe01580f4ecccdfd882019a69fca945ac136605
prerequisite-patch-id: bb226d785add80107f1f2de0636f253beb6cb53b
prerequisite-patch-id: 8f7e8055f97a41024912e4d97bdc08071fe68147
prerequisite-patch-id: b8a7e87e36c3d42890c0cd3dd9aa069a6637ad3b
prerequisite-patch-id: 47164a95ddd51b2266156f2b96ed0d7b5fd3e18a
prerequisite-patch-id: 8bf042c01fdcbfedc2f95112776470e9d5620d39
prerequisite-patch-id: 7e7eec84c5f885c36f681ca9eee770d1ab5f8855
prerequisite-patch-id: 5d8a4692cb8c4b6713f5e8db9aa8959b8950b632
prerequisite-patch-id: 776d9aaf13d83d7d7e2a81764153e2d257e133e8
prerequisite-patch-id: d4484cff2d3a9ed06c5051bcef7f162a44e19c28
prerequisite-patch-id: d5925be27566a5db19d056be4eb290b16ae9ccab
prerequisite-patch-id: 920fb220f0e338b87cfa8ebae0f4d833efbddbe0
prerequisite-patch-id: bd7cecea066a51751334716548df334339dc68e7
prerequisite-patch-id: efeacdc797cee31fc7bbbc42b4836e96574a7e50
prerequisite-patch-id: 3d324a3381fd9162db9b953b9228ae19c945a775
prerequisite-patch-id: 210836a6298e3a34a7beb8859c97ccb589c04f3c
prerequisite-patch-id: 2abccf40686a0ac482f1bde7a0eae59f91f1b48f
prerequisite-patch-id: ed3fcaafebe11c8b66ebe720caebe19a207bbc24
prerequisite-patch-id: 9d7a2c6b049a04626ea98e0180765e7181fd8057
prerequisite-patch-id: cc77bc790958f7c60ab50633e580528fcd4fd5f5
prerequisite-patch-id: d53aa1efced78548b1ac9f8fe4ad6ec99a917361
prerequisite-patch-id: 6e13de758f8687b53718a176d0bfcd536ca7369c
prerequisite-patch-id: 7e41505a6ab6b3a85ec41401b4d163a2b411622e
prerequisite-patch-id: 0df427a9f261f84a1df9572527237ce6157e89d4
prerequisite-patch-id: 9d0f67451d6d90db5aaf33b2b75cb122b33a351d
prerequisite-patch-id: ef593b39f902d83cac2503b252c02486b41fb4f1
prerequisite-patch-id: 685e8fd37b44c1ecc30b08a8e1f4924f4ddbd571
prerequisite-patch-id: c37c5738f957f9303ffa77fa3c0c775be233016d
prerequisite-patch-id: a0cccbb6fda59513f99d6353b814e5cbbc08b779
prerequisite-patch-id: 2d7bec645e3231fe65fd1abd09a0d1e4fe043b73
prerequisite-patch-id: 8ec00a0dc08669e29eafe9ce1c7800689703f7f3
prerequisite-patch-id: 1f1e0621681b2b8ee50c8a0ce70456bc4ca7b7cd
prerequisite-patch-id: 26d88b634dc5efde18e00a81db737e225374abb5
prerequisite-patch-id: 6e9ad2dcf324a76e1ec5ea83ee54895d03a0e9d3
prerequisite-patch-id: b11bc4a14c72cb630f8d267cfbe21b379c940715
prerequisite-patch-id: 0420379c8a41a68f3856311d1663076a7727dcde
prerequisite-patch-id: 25d359d3b334717f4b2d84236b59b939772d6183
prerequisite-patch-id: c3f0b4c674dbaa3431676848ffff18b6a0c44d61
prerequisite-patch-id: 42b71be5123f8fdd66c743f793501f5562fe2425
prerequisite-patch-id: 0f70b3a5daed447469b901f7921b2318c720757e
prerequisite-patch-id: 09e250caa3e75b00e658863c36d42798bc06ec8d
prerequisite-patch-id: e1f16da783979f4fb4b8306490c95a7039f897fb
prerequisite-patch-id: 5643553f74a5d304d1a990af0db0b07346a67336
prerequisite-patch-id: 187de507af0d7b1f25fa05777884458e33dc9a79
prerequisite-patch-id: 1165fa8b2cb7176a3dd26232088e038ff5d81a7c
prerequisite-patch-id: 6400ce6d88e495ecc58d19c0528574e64a25c766
prerequisite-patch-id: 89895848af01e14968072639098d4ea76a768be9
prerequisite-patch-id: 224b1265e80fe637b3336fb815558ee0e81edec6
prerequisite-patch-id: 7e2d76db20151ca60f4ec61e62ce0dbf4c0e55c7
prerequisite-patch-id: c614036fdf09f72c8863104a5fd4f990fe174e13
prerequisite-patch-id: ace352e9c9151c719f3c236ae2e2192bc747b90b
prerequisite-patch-id: b6158e40fcbde1863d3977424481421075d0f7b3
prerequisite-patch-id: d449117a9edddcb3451089ef32b2f7fa01d4aecb
prerequisite-patch-id: 5101e872f2f184ea5768ffd771acf9725ac1cab4
prerequisite-patch-id: bf73ab7bd6648218848f17b71692371a55e0120a
prerequisite-patch-id: c3b1351467714171ad6c01be32c87de72d3a6fbc
prerequisite-patch-id: 2867d95baa09cc9801c2fd67c3a535d5d2be8b0e
prerequisite-patch-id: fc7b35ea70d9150c4f19b786bdc7c20bdf7c6526
prerequisite-patch-id: 40e100a5d0e9f3f44a119dc1f58e36ab0526a62f
prerequisite-patch-id: e43f3457c5d90809ed49d9538819d8e5b4ce5c75
prerequisite-patch-id: 5bcfec6da223483948c1ff9da462ebbbb4390a11
prerequisite-patch-id: 4f9d0b6c50e3a42e94d9bf23fe775eeb6d6ecd72
prerequisite-patch-id: 9c3ebff618985dbfce3cca96f950806f08b70bfb
prerequisite-patch-id: e36d3067b9d0443ebf935026460545f672c2d828
prerequisite-patch-id: 225f0b2c5a45a43a2763296f3e0513d22b173bc5
prerequisite-patch-id: 289087e0b44e90fc5b0f253f0d8dc9ab6c7d72a9
prerequisite-patch-id: 2c5593cf8929e69cb4148186b3bef6e489e73902
prerequisite-patch-id: cdb69904003341ea934396ea253906a24844b7c8
prerequisite-patch-id: 88f82dd7ed8653518a84dd367f881cdd4ef25d78
prerequisite-patch-id: 00469d33384d770c325a7ea10cbc1a44549d1eb2
prerequisite-patch-id: 15f3e8a252d1f14d45f278ab522a2f42ffebba2e
prerequisite-patch-id: c26015d701351e845c3d6903f57bb51d25a7ae18
prerequisite-patch-id: 7a08d27ee929f8867ecd1a75b4a2293a676b6bfc
prerequisite-patch-id: 9af04d971638f8501cc7d76448fdb95161955a73
prerequisite-patch-id: 625a7621251ae3234ded41695b8f33d946323202
prerequisite-patch-id: aaa8afb516e655d12585f8cf94fad189b4531b28
prerequisite-patch-id: 76d11938b0e78d07495deef5b7da2f8ccc7b9461
prerequisite-patch-id: d4114743f8347622cd42cc41f4186ce6c3030bd5
prerequisite-patch-id: 0b75a6d432d2ffa14dd9259391faa155071a1e23
prerequisite-patch-id: 8b921c6913f8b4270fc67883d8ddab95704c2a88
prerequisite-patch-id: 78503832aa16c0e5415cc0dcfcd1f83e8376aedf
prerequisite-patch-id: f1028ef6ee72583d66b4d55aaee4af7fc71842d1
prerequisite-patch-id: 591544db367f6a987354738a24f490f8122396ac
prerequisite-patch-id: aa6d4dff1ca9f85a3df36147a790853faf87f2b2
prerequisite-patch-id: 5c73e1af00acbfcd034fcdfba6c8e3cff74d2d62
prerequisite-patch-id: 4141b937bee75502fcfc1de23cdb486ecf6803c0
prerequisite-patch-id: b025740d437bc7767919b44bc76a1aacd6c1cb26
prerequisite-patch-id: 6d0048345c7bd695056e97c0d7ead76ce2d5ef39
prerequisite-patch-id: 8b3a1a5eec7706fe25f5d03d217fbec86201c68c
prerequisite-patch-id: d0bc3f991fb16f0e897d5cde022139a91f5594b0
prerequisite-patch-id: 157216766e07c8ccc334d9921eeee06d1405a984
prerequisite-patch-id: 23dfb0b39005cf36ed8d5f8ffcd60e7ded4841d6
prerequisite-patch-id: c0b1af7370818486f49544e88f39220e1931c176
prerequisite-patch-id: 151133274a7232b4f397bf308f21a80e94477e6c
prerequisite-patch-id: a611fa639bc7c41949c3fc6dccc53a0e90942952
prerequisite-patch-id: 3f0fda2e4c545b3dcae424db9a461e880d1ac5de
prerequisite-patch-id: 6589751ae43b54c4a8103942aaa67bc37d2ff0db
prerequisite-patch-id: f9daa789c060054fabc6ea047f015b7aa1b697a9
prerequisite-patch-id: 1f589e3cd91f44514fee547c8082b06946673f21
prerequisite-patch-id: ecbc7f993df89067c16cfa028fe7f9ea2b739152
prerequisite-patch-id: e9adb1fc9fa191b99cd012de9b20c64ca5c1c1e1
prerequisite-patch-id: 60af5173d0cc1959577780a31bb8b7c8e84d9cc1
prerequisite-patch-id: 13f841b13bfcbe6d3ae0e36cd60bfc7740423255
prerequisite-patch-id: 1052a7a8c6ef7e9ffccd547c934b318f27ce4c26
prerequisite-patch-id: 495dea2c8abb6ab0f9b24614dc5620536d63f856
prerequisite-patch-id: 6e5f2d096b7b7e75a11563006ebfa62035e12805
prerequisite-patch-id: 48cc37319b4bfb55080d3fea9c3ea09bde76ce5f
prerequisite-patch-id: 7ea85137e9211fbc741d62d4f662b80452baae2f
prerequisite-patch-id: 40b93c0066ba490bface49511eecf718b5a76735
prerequisite-patch-id: 552fc4ba554acef8bc4e0156a2e80043ae481eeb
prerequisite-patch-id: 06e860c8cbbe9a608e878049e531e6a55b7edd6b
prerequisite-patch-id: 40512ae9f82354fcdd877b20278a1967d8056a34
prerequisite-patch-id: 836d38f0a59b22f0c077b5ec71166c239f13facf
prerequisite-patch-id: 293d870531b7c4edee2b263050df50830ac21952
prerequisite-patch-id: 8151970f4067cea98bf39f92a23059eff7f6c1f3
prerequisite-patch-id: 0b8936be94c3e58fe8406a8db66c2bb4b17f7a15
prerequisite-patch-id: 93528e90eec585decb6ab88ae5915b831440a81b
prerequisite-patch-id: fe70ab9787501938c6c6c80c8bdba98397b35225
prerequisite-patch-id: 3c74dbad3e8f63d9ba18d315331e83f1710d483c
prerequisite-patch-id: a6c67f217c5cee26a3c7872c5ae71fc0735753dc
prerequisite-patch-id: 0038b0590464396e358e0d57ad1717b6f167dcdd
prerequisite-patch-id: 9c8aa68acd2ade3052b5cac33814cc63911b238c
prerequisite-patch-id: 32672067792611e1f9202e9a8918235c12aeb745
prerequisite-patch-id: adc0301a55f2862db350020dcd66d5b6eb8f8904
prerequisite-patch-id: 662e9271a9423bb06c509603c45051720f2aed65
prerequisite-patch-id: 709f97f3cd006d27cc04587c00d74f10478448e3
prerequisite-patch-id: 73dd00be03fbe0f5ad64b6889e0e73c3ce217a92
prerequisite-patch-id: aad0e60d530abfcda9bc0afb1c851d226a7ab016
prerequisite-patch-id: c1aab890dce1f49bb21987b8b0be73fc9b92877e
prerequisite-patch-id: a21a8f8f826b4853048b5379dfa9db08ab0f5b36
prerequisite-patch-id: 49ed930626f415c96b4aa2d63e138a89c33ba763
prerequisite-patch-id: 398c7775882018b3de3e51f2c8bf65755cd2cfcf
prerequisite-patch-id: 1d7ccb63b337a14b7919626783124150e41bfcee
prerequisite-patch-id: ef616d6dffac7445ffac820d187d5ab2673c3e9a
prerequisite-patch-id: 6237f4c8e76c293fde24de3017f5b81f11d9ee4e
prerequisite-patch-id: 7422071db2bc6aeacf9e475318df92f4c0ec4ac5
prerequisite-patch-id: 16466bb2c91438eeee2032de09ed2fb0ee121e28
prerequisite-patch-id: fa30abc09fa6747ab4506216244a34f198c95d90
prerequisite-patch-id: 836c8b19040eba176d3db7d5069a45a8f35327f7
prerequisite-patch-id: efd75f39094cd2e6fe38c3b9909fd851ecbcf490
prerequisite-patch-id: eb8410ad4afa91eb870a159ee05b162b30cc6440
prerequisite-patch-id: 17f98aa1141539bf896973d8aa891a36d43c09b7
prerequisite-patch-id: 17e35927cd26bf979b3e33b588905f4b62799169
prerequisite-patch-id: a09e43adbd64556a0566577ad5a56c3a4af4988a
prerequisite-patch-id: 1297094064faaaa7780ac811ccc89c3172e13a6a
prerequisite-patch-id: e97acdfcdedcddf5881625976447565a3d9b137f
prerequisite-patch-id: ec7fbed6dea6c17e71765853af0b7fa26f342e06
prerequisite-patch-id: 819374b24ff31675045b8ab8e26b160af8345bf0
prerequisite-patch-id: 8a087ee98a3cae724d48d8b7c50af2ad2c35b90e
prerequisite-patch-id: 176209a7cb7241e1bf1bd7697f4dec5cc34648a5
prerequisite-patch-id: 8376744e529729ef173d80d77b8fadb9c753489e
prerequisite-patch-id: 8e39cfc66fd90b081f86c9e464b1954cfe7966f1
prerequisite-patch-id: 3e8b64abdcdc816bd4ebffb7837b094bd7595329
prerequisite-patch-id: 3100e75ebf21a99db86cc074fa97532b60129eb1
prerequisite-patch-id: be40c091e5375969f511c7bdfba9e725c120555b
prerequisite-patch-id: 8dcf0ee3faa59f1e8182cc85c8b6b429f73ed024
prerequisite-patch-id: 47fe4ecb2d88e8c150f99ea4c99d341078cbdc36
prerequisite-patch-id: 550caab51141d3f3479c10ed8fd8d543431940a3
prerequisite-patch-id: e09d8a1c0fd07c9d07f5727bce0281665956de3c
prerequisite-patch-id: ca5fe3f4dcdadaa7a1d74728c5efb354596b8521
prerequisite-patch-id: dcb18989d3bdab1ecb6f2e6e2a0f6ed53b0a2ddf
prerequisite-patch-id: 824dfd89fa2add51469a2d699361cee5084b6379
prerequisite-patch-id: 22a25678ce52c09ee9cdcd5efd4c26f235887295
prerequisite-patch-id: 074d2c0655539d99a2e98378ae42568d1d4c2ae9
prerequisite-patch-id: f148870c2660e5e70d4465a83eec4b3522865106
prerequisite-patch-id: f293a01e1fee15c0b9797a1c29a5a54d5bd96694
prerequisite-patch-id: 2628343705612af18cd578baf952b36fddf7315d
prerequisite-patch-id: 8e6925dd9dc47e6dd838242ba8fad5c7b76fb465
prerequisite-patch-id: 988681693b413a15357888745a26d54ee29c291b
prerequisite-patch-id: bab6ebb9d753ab004f259843daebf3e13c838c85
prerequisite-patch-id: 707c238b68ea8c06aa2237842fb0a6103fd41f41
prerequisite-patch-id: fcea116ad4b00335aa6d5ceabdfdf505234cdee9
prerequisite-patch-id: eaf3fa1e76cd8d8339afd4d9329daa7ac84f616a
prerequisite-patch-id: f251674c7728546a4cd8552b319c617ac3711d23
prerequisite-patch-id: d825bdacdf7ffad27d44cd1f099ac8cc352d020a
prerequisite-patch-id: 04dc8abe302173dbc2e2c2da871a4d041ee7bb9f
prerequisite-patch-id: 02522814d30e8113075390808540dd226e3051b7
prerequisite-patch-id: 2320be8a331d90c4650c0ece519a01304b80776a
prerequisite-patch-id: 947581beac0328015bfd62aedc0c5862b495a0c1
prerequisite-patch-id: 10c37e6e14e812097a233202a5832ba3c423d8de
prerequisite-patch-id: 15cefe05ac9ef3dcf20b7d8007a03e74f5563cf6
prerequisite-patch-id: b836759a83df327f217ad261d0726c34d12842aa
prerequisite-patch-id: f155aa90ecae96f2214e89312b18d7d250a7fc5a
prerequisite-patch-id: 681d7fec5f11574e02176356b4b35932e1ef8618
prerequisite-patch-id: c37ad2471374b9e48dfa85b8566deb4c6aadf657
prerequisite-patch-id: 278d078bbba52756a63e6ebb0286dd3a5f38806d
prerequisite-patch-id: 3a28bbf354931d851e1f2493625df291fe7e80dd
prerequisite-patch-id: 60bc552e463301fa97362af6fd9d637998f52d38
prerequisite-patch-id: 0baa6ab673633b5b1f3a302b51225503a98d6141
prerequisite-patch-id: c6cb3dcebe4ce4b2044989393e1b7bba62dedcd7
prerequisite-patch-id: cff963d5d5823ff22cd43b19b77b79c3339fe878
prerequisite-patch-id: ba90a7f35f1e1033968fa6d2cc66ab741f53c945
prerequisite-patch-id: 3b263da9e481bb301907d63bf1797b820e0af102
prerequisite-patch-id: 9194c2addb35186a1a6a3190eb4908f87dd60a6e
prerequisite-patch-id: 48bf0630a4b4c30c847ece7f12e9bdbe1e99def2
prerequisite-patch-id: 2b78a63c71dd2f542206fcdb10f441fa1d97520c
prerequisite-patch-id: ed5f738f24231c2aa4b4e05f12be380077e76e2e
prerequisite-patch-id: fd50155becc655f1d235a10ad58e5067963298f7
prerequisite-patch-id: 91aab678f21df5eaf187ae14e41d37bbe9ebd327
prerequisite-patch-id: df4d6521dcf04bbfc29530d636dcc5bb3d3dd77b
prerequisite-patch-id: f72353d5a85317dd8a5c6613cb5dc7707b4556b9
prerequisite-patch-id: 7e54718973c0342eb9f6ba4e74f6db999d187eed
prerequisite-patch-id: 9bbc1204603361242891f171e1a91b8e86372a2d
prerequisite-patch-id: ccb955bf2cdfc3b1039462b42f82d8d5af6b66ca
prerequisite-patch-id: 1d57619b8363dfd2ab0e554f921f28e09096ff62
prerequisite-patch-id: 40d54e77bb4e0cf58700bc0ce0d5d70f059d9b6f
prerequisite-patch-id: 5ab159a862cfb4fb81c1e5cfb85423e7e1588ca3
prerequisite-patch-id: 6d729c5a089126278366f2309477937c109878ba
prerequisite-patch-id: e63e8bb81e4068b3f55f82cb1db5aae56389754d
prerequisite-patch-id: 66d2fd9a3f35ec6e773269ad9cc57fed4a32c381
prerequisite-patch-id: b5f056c5540ccd820f9bc36d907721842f3539cc
prerequisite-patch-id: d94ffd721cb2d2350b788563ee221e9acf94e56c
prerequisite-patch-id: 8674b3c525655d39ace7abf46cff737bc2ae4283
prerequisite-patch-id: b23e3573e9ade1d22e7f51525ce4eb65eeb5f909
prerequisite-patch-id: 25ea546c5a6a7c920865b6d24e2f884ef72885e7
prerequisite-patch-id: b5aa8667087c9ead0aebbe7b613a9d4dbd220f24
prerequisite-patch-id: f2935b22baa52fc42eb3a7faa54ae16e529f918c
prerequisite-patch-id: a0018fab42d8ec2e878d75f8d37df54671542b13
prerequisite-patch-id: 0285cc042cd0246629f1ef96ede3846000865a8f
prerequisite-patch-id: b607146eed75f31c5fdc4685db491fe709f5d430
prerequisite-patch-id: 7d4d3c5b2ed0fe409ad9ff49f73f2390d0612497
prerequisite-patch-id: c93a8cd924853147dedbd6d3d6f7a15978ef55f1
prerequisite-patch-id: 270e9e1d99dc182885a45b2611c68de5cf99cea8
prerequisite-patch-id: 98a92a8ba43e146090b406352fe1f6e1f492e40d
prerequisite-patch-id: dc4352dd8eae623a3ad6f9bc32ec5648801c6124
prerequisite-patch-id: 9c3a79ca5145a01874a6008191c7f3b87f654a7b
prerequisite-patch-id: 0001d8fc458eedcfbc3f461bc406fae8511ae934
prerequisite-patch-id: f28e2c445092f25691d4f6f9c62b3e89c73cf468
prerequisite-patch-id: fc1de1e72cbd6015f2e6ddfd350f169c8e2f910e
prerequisite-patch-id: f52cfc9c72bc4161440b946119dcb2507055729b
prerequisite-patch-id: 6b078d2124202d0664b134ec8ea1fc7852950470
prerequisite-patch-id: 368e1affaca0fe38c92a52ef900791abc228143e
prerequisite-patch-id: 4c235f0eadc73d8c6d01d74127774e9f28de942a
prerequisite-patch-id: c150f5a79d6d8d46e85e17bf49537b48a51bdcf2
prerequisite-patch-id: b232d246084523cd41a690f03f1fa1ab7562c546
prerequisite-patch-id: 72fd4c6bf466d25a17ad42d52922e83801303922
prerequisite-patch-id: 362b8d901de2fdd7d98383e9fc26830f6763b521
prerequisite-patch-id: 1616165aa68df0e1459299a53aed824f602a99bd
prerequisite-patch-id: 3ff92fc2c5491e4f8cc09db2e591ddb7a6c20b1d
prerequisite-patch-id: 556eeb140e0df279076e16505d95f783d3cc4ae9
prerequisite-patch-id: ba4797a6e4ea8c2babb04ce43367d689fc329ccd
prerequisite-patch-id: 4fa4ed4777e480dc53819fddc86f5b2555c041b5
prerequisite-patch-id: af3480bae511be1a7870e3e680b4eef60607f5a3
prerequisite-patch-id: 55f518446a63549a031773d32df38cf474ea2313
prerequisite-patch-id: 802ea79df90c4adbc916d0970ad4a975f4f84b40
prerequisite-patch-id: 097ebcc98c4273343599bf70ef07fee6124cf706
prerequisite-patch-id: 72d35f4d624b7fea9752ba780f2ede611f4046ad
prerequisite-patch-id: a4f5f68f6728e9dd5b5237edfa5d42d96ada928a
prerequisite-patch-id: 5b9a10169141f2d47d944f4a7afd7bded062196b
prerequisite-patch-id: 02a35a5f5d49d8ddcb74b972458654268a7b756a
prerequisite-patch-id: 22b6401eb7e4d201a503cca9867e869fd5d42e62
prerequisite-patch-id: 27865dfc1822fd75ad1e22d75bb2747ee457ba41
prerequisite-patch-id: 0889d5001a53f12e3f1f876abe49185ecd615b68
prerequisite-patch-id: bb45057678567000be6c3bdc8ce769d4cf4e75ac
prerequisite-patch-id: c4236612b45ecf7921647aaef57fa65cf62d079c
prerequisite-patch-id: 57dfc6adcf39c3495fbd804b036972922b5c0fd9
prerequisite-patch-id: cb2ce53b06c00f1f1fb448b7edb5ac098a691045
prerequisite-patch-id: 96978556a8cc7446ef0de0141ff9d108b40aae09
prerequisite-patch-id: 18e5a7be320a8e3046ba74f8076ea55b72d4d7dd
prerequisite-patch-id: 38bc3a9603869b34a191d7fb846e5c47a85e061c
prerequisite-patch-id: e36107a14be8c30a3ffb9a51e2d7d9acec092a64
prerequisite-patch-id: 5dab4e5b83963d73052c038a6d7b1611137232de
prerequisite-patch-id: 9d3c33e926d3c75886a08f63cb5be8d879c1448a
prerequisite-patch-id: 2d95b01e46698a409f84e16b883ede24fe14f895
prerequisite-patch-id: 9e06cd1bde577fd5fc80453132f89b3bc77fbc13
prerequisite-patch-id: 443a9908a1daad4e3cf98be4487bc052c22ad9f9
prerequisite-patch-id: a85d9b7fbb8d144150baadb153b5cfaaf58e3844
prerequisite-patch-id: f0e638de6690d8c6c0b2154e544db7ad8d90c734
prerequisite-patch-id: a609d7020091f5dd330a239d532d9f57dcdd005e
prerequisite-patch-id: 07cfcf01a56b55c65aace986135074af501c9f56
prerequisite-patch-id: aded4a0220b7941f34e2a7792c80cc1e9268bab2
prerequisite-patch-id: cebd5e86218a86d60fb97207ccf60985f4dfac32
prerequisite-patch-id: e78854817468304c9d72b079c0ee4bb0b3707e41
prerequisite-patch-id: 2206f45f1ab9ec18485f20c92fa8efbd65961f7d
prerequisite-patch-id: 50f337d1f3209d044475738bb34158e62cdca92a
prerequisite-patch-id: 1effc8d58302a7b319ac7b0da229df1f26f1215c
prerequisite-patch-id: fe54b24df89ab41db10f0fb1ddeed8248878d3e8
prerequisite-patch-id: 0b0482d895d4a3ad368251a7bea7438cb7cdc6af
prerequisite-patch-id: 15a2f5f833f124032f98de36a4ae6b4d4173910c
prerequisite-patch-id: d2223230757cfa232ca9e04edb8bcbb3ec5c1658
prerequisite-patch-id: 87dc0f93cade1c16ad70966750b97fef5177d067
prerequisite-patch-id: d88d751d96f02f9658489da55a9493d999cab019
prerequisite-patch-id: 8c372978791990202f484cb9110a8c0c64d65029
prerequisite-patch-id: 95bbbbacde7fec70c55dd22ce1d24605727263e4
prerequisite-patch-id: 0fa611b97153717540f1038666ed5300d12f11f3
prerequisite-patch-id: a582314e40e25ce8258bdc272d0c5c4d68154680
prerequisite-patch-id: 543ac8aaeb1d18327fdbf147d834e2d6d7670e16
prerequisite-patch-id: aa47aa222f428bae979d50dddc007104b0d159ed
prerequisite-patch-id: fc79ba46a412a67bbb0826af50069aa82debaf8b
prerequisite-patch-id: fc5714f93d4c822e8a0ee970999a181f8e224b8d
prerequisite-patch-id: 237cac0fc060253e87f71f65fc949cac1dc7db1c
prerequisite-patch-id: 1a3065b7473ab984a1e05d147d7d64ac92617af7
prerequisite-patch-id: 5fae9c8b3701252bc6111b552e76da73e31b5026
prerequisite-patch-id: 68d294dae58998611f9b903d333149b0c1d6a484
prerequisite-patch-id: 13d910d4892633411d599282d637a5ee6433eb3a
prerequisite-patch-id: a1a8dde676397e76bcc51d44f2a48c706c6fb796
prerequisite-patch-id: c17fb31959ed2bed2688000fa137b79bb33d78ee
prerequisite-patch-id: 456ee2212ffec03a5ad67f96b54a8b3309976d54
prerequisite-patch-id: 10d8e57ead3ebdc36abfafd69a2b5da6621bc3f6
prerequisite-patch-id: 61035999ee2d2f10fd2712a298ddb00ab3817360
prerequisite-patch-id: bfb6883221edec596ea02863f3436e449c82765c
prerequisite-patch-id: eb719193dcbde7638e4961cfcd244db38efa1bc1
prerequisite-patch-id: bd6fa82149778a57fff447acd64387213b6343c1
prerequisite-patch-id: 1da5bc941720e34fac251a23e1e3a26e8ed90e20
prerequisite-patch-id: a7222512856354258ed7c7e294135c93285c4e5b
prerequisite-patch-id: e4a129a05338fe8988673759149c5ceb9d4e232a
prerequisite-patch-id: 15ef3c3fc888f7329dfadb3e734904a5fd660485
prerequisite-patch-id: d9cbb0c7a3c215c07e45fd0426e60e18243fb7f5
prerequisite-patch-id: e1e96c523e65d67f8fd9973bbecca84dcfb6b76f
prerequisite-patch-id: 3c9c65dec3a5ac8a6b226bf3b47b6fbeaf5bd2ee
prerequisite-patch-id: 217092f468bda75b13a12a513141e75fc5178879
prerequisite-patch-id: a3747cdc326f8e3612f3e075a776ca6bc1c10205
prerequisite-patch-id: 0c5cfc5e5c82a2b8d6e065cc9d8ae909ce34fbc4
prerequisite-patch-id: 804a59c2745b758ad2e2ff7b6e614f2c676a594b
prerequisite-patch-id: ace0da8c1161eb7660b08843bba88b4a4bc5b2c6
prerequisite-patch-id: 03f752c8b65218f7ef1969ccfe56e9fa3962df26
prerequisite-patch-id: f47912f09d7d45f2b8f1011035b30005b5000a69
prerequisite-patch-id: ec295ded6dd1079d7c287d4136b60a17b939495b
prerequisite-patch-id: 5819b4c8b336ca6dbe4a6586a4c228eab8fcc928
prerequisite-patch-id: 952ebcd37d287db028621bfc72bfc1a6cf01af01
prerequisite-patch-id: ab3d2b40d8a9594a964b67dd3581af5cad21bc38
prerequisite-patch-id: 72651867070d273e1d1035888740f561c0b6433f
prerequisite-patch-id: 89aaa8061f260a7fb726f679957d439dd00579ac
prerequisite-patch-id: 15d69431cefed52e344a823f5031c05a9f9bf81b
prerequisite-patch-id: 7ca5712da329751123afba7342fd7a61ca4f34df
prerequisite-patch-id: d5cb636dafb5719fa963b5dfcc0336a88b4fc87b
prerequisite-patch-id: 610dbc1227ced3e8abb53c54bde0084b5498b13b
prerequisite-patch-id: db1361620ca20128b9c6a34f765acbf74027b232
prerequisite-patch-id: 310ad7f641dcfc434ae6435965df1860f8451ea1
prerequisite-patch-id: 78459c5f0761e30f69f71bf8ee7fda24e517ac0d
prerequisite-patch-id: 84405a2fa036b440155bac9f6618c1803ed80d84
prerequisite-patch-id: 7db4f1dfef36adbc329ee3e1e9fcf9783a49851d
prerequisite-patch-id: 75dea37230452b35fc62cb734229249745e5ce0c
prerequisite-patch-id: d873c2350cbe0baf95ed73265ac55a786eb4d7c0
prerequisite-patch-id: d622be34dd1170f3389d82654ad207778e9d07f8
prerequisite-patch-id: 855bc7ffeb9b472526877e6a9e86bd8f700fe57e
prerequisite-patch-id: 7c2639075610f14c9933c6f1dad8e40b62381748
prerequisite-patch-id: a94cbc473f915deecdbb2e53d0a6f52ce669e35a
prerequisite-patch-id: a4dd8752972b6667af2c561bab5b1011441468b1
prerequisite-patch-id: 2af03a92ace9a437cf12d96013ae73c9c83d7ee2
prerequisite-patch-id: 048135209f8a2c3bf6d04002665f5b9b4cae9cd7
prerequisite-patch-id: 9ee8ced2961191c077435b9d0dbb7e78c4374eb9
prerequisite-patch-id: 7bfa9eacabdf3916d506f492900f30a79d82a42e
prerequisite-patch-id: c7d4fb4a7ad59a4f290505b5c76100f652cf9c8c
prerequisite-patch-id: a8840b1efd1e181dafdae756bdb5c6d4b285a62c
prerequisite-patch-id: f8ff5dd424330dedf173ea14f8466161ac4c0647
prerequisite-patch-id: f03815e6266667892ce9a66245a089c7de440a1f
prerequisite-patch-id: 5970e45c50de489d6aa3214dce3cef537e3e6c31
prerequisite-patch-id: 53e29c80b401f07909989dc8b093abed450aa03d
prerequisite-patch-id: 7d7d8a4f04b3f934d0eb874dfce1eb5a8604bffa
prerequisite-patch-id: 5a84b1181d388d0b2da1b463d1de71aa6569548b
prerequisite-patch-id: 3a769a94e8da1263174faeade2dc68cf259dcdcf
prerequisite-patch-id: 5b6d42cfca21fad158186a8b76f4f0ec5ad97d6e
prerequisite-patch-id: 9a62a5e2337e5ba543c379efed1f21dade768fd1
prerequisite-patch-id: 9ebff19051af0dbd1f645f9c8c423de90a09227a
prerequisite-patch-id: f76e05112286df0438f26d3758135621a85252c6
prerequisite-patch-id: 00b18f63555a89e2eab21bd9d50c538ad7754fcc
prerequisite-patch-id: a2fb28463d41a91e2c2d87a22324de6ca48679ae
prerequisite-patch-id: 7ce928dcc33bbf1cd791423513ad443021d03412
prerequisite-patch-id: 2e7361b2dcc204142d2e5767046e3e08c48c2e77
prerequisite-patch-id: 24ea2e938816b259d7fc967dfc0f464a0cba7975
prerequisite-patch-id: c89585151d53c9d578ab509c37f6b05d12878869
prerequisite-patch-id: a6f03b5625937215709590ad7adc8a5455400e79
prerequisite-patch-id: f09e2aa58d862c451e8f963f9533920af80c6a7b
prerequisite-patch-id: e1196d2ea1dc323c0973030479c2922d9ac33655
prerequisite-patch-id: 43d7422c2d8c8d6eb2379f201eafb0ebd23a64a5
prerequisite-patch-id: d6c66f0614d060b18b2a76484168222960476186
prerequisite-patch-id: 67f968424ad138f1aa5e456048467946ee2a071d
prerequisite-patch-id: d9c29389f24583abf04bd80f9a20f192a0e6632b
prerequisite-patch-id: 4943fc1b63e48ddf0665e32fb1a0353e136bfa60
prerequisite-patch-id: c82e3bda35d365c6bea0048a23b6c607cfb302e2
prerequisite-patch-id: f1994ca07371183e619a64fbcee836b01c7f071a
prerequisite-patch-id: ccfeb0bfd53158b135b2e795d5e1774e66a12591
prerequisite-patch-id: dca1664806ca75261bc9d404bd11b06466bd02c9
prerequisite-patch-id: 8c45464dc06c27a49c60647d92a12d280673e4cb
prerequisite-patch-id: a7963e7abafa4e0fa4ebf9938a305d23365e3f80
prerequisite-patch-id: 84988dffe262e07c1346c76b5db73db80d76d793
prerequisite-patch-id: aa13e69e6a9615b3fd509352c91bfed0a09a4ab8
prerequisite-patch-id: f9cafb53e6372867dd3fdbd90ff39c21102b2c39
prerequisite-patch-id: 85fa7688d92ef93318fcf3f82920baf6ccbf736b
prerequisite-patch-id: a94906cf0c9fa3d4d1aecfbfd458314972b2c523
prerequisite-patch-id: 39e22b6e0f066826d6436a96cc701868a799d9fc
prerequisite-patch-id: 3ca5ae6149ea071b7bd40e8f5c3175f9d03344ac
prerequisite-patch-id: 3e00d8ab21b7ba3875026e623664c52280d688c0
prerequisite-patch-id: bde05e5650effcb1a0a0577a88a3057db7556143
prerequisite-patch-id: 931d51f65ede1686eaece14d76a66c39b6a6f948
prerequisite-patch-id: 27012cd7b28923903b1b6ddf3b2a9f56c852abeb
prerequisite-patch-id: b652bfd627a8226d13061683d971b8d349841b44
prerequisite-patch-id: 50bf1a48d334b0cba1c27c638bac73a0733e2fe4
prerequisite-patch-id: ea275c402d9d26a3974f23b42014d1a2d549977d
prerequisite-patch-id: 026c26c13545fc94a0f8c32b612766eb8bef38da
prerequisite-patch-id: fdd3a8df82a11da616d247230cc027ed7cb627c0
prerequisite-patch-id: be67ea0f494cb4afb17bd2379099e838d283f31c
prerequisite-patch-id: c1fa4674e4405905a94641e12598e00f7f5d0c37
prerequisite-patch-id: f77f0d5fc37b6fe9362a751a3e7da0681d666600
prerequisite-patch-id: a4d19709e8c31289768652bc30c81fac16a1201d
prerequisite-patch-id: c1e9f0b44e3d7c270f3f3db44ebe2bbc9ca912c8
prerequisite-patch-id: 66c540a606adcf3811153f80cbd85fee0ce585ae
prerequisite-patch-id: b1ee743c68bb696ecf290c86fbfcfed3ade64dcb
prerequisite-patch-id: 0b9afc066dec6eb0d1ccf1f385cda2a652600eda
prerequisite-patch-id: 9b0a024ab3d30ddbaed19c981d53a327d177e2f7
prerequisite-patch-id: 7d00b8ab4dbeca6eb26f1f0298b0b6b4b37bcbdd
prerequisite-patch-id: 83bd319190629a9c06cb809f272ae5c29bcc8a8d
prerequisite-patch-id: 56f0a17494934adaaa50d12af21e7b3c049b88d9
prerequisite-patch-id: c1e2141cac3c64b964beed68e22f6b413ac0dcb6
prerequisite-patch-id: 7986a5a24634464ecb39f505b087315115f0f6ac
prerequisite-patch-id: 9b27b1f9863f95ae39da096e77bbf68d53ca7a95
prerequisite-patch-id: b702c95609f40faf4eb07f1a05061fe602212e6b
prerequisite-patch-id: 25fc7ed9ef3fe492f6aae1301ed4f7ab856ddf76
prerequisite-patch-id: a02b252cd9a965318d6c0768070b690ff0e745ca
prerequisite-patch-id: 63f9276040ea542a9293f787732e82fd47df960b
prerequisite-patch-id: da92b7ddf7f28b0d7e5f66d1b21107998c3d41fe
prerequisite-patch-id: 6163a8c2f19adce478f0e85bc395a2f920399bfb
prerequisite-patch-id: 69046aabe62f728f82895e4e150b5762e54cf219
prerequisite-patch-id: d5f2eb3594755f98759491524495ce3b754dd1c7
prerequisite-patch-id: 71a18b4ae9a394eab43b3345d5e253055da63561
prerequisite-patch-id: 665ee5b4312f73677eab898cd4ddc085c01c7f35
prerequisite-patch-id: 72db1a7d05942905050890667887ac2b2be56502
prerequisite-patch-id: 27fd7e472c530c2c96667108bc51036159f42605
prerequisite-patch-id: 8fa83e5898a0e72cf4b7c0fbca8263caea4e745b
prerequisite-patch-id: 9a5c462bd7be1fb3103eb2be5672b1e301bd5082
prerequisite-patch-id: c9be0357aed337acf2dc8ffe7b76d368e6b050d4
prerequisite-patch-id: fd765cac5c05beffe813cf87347864f66ab2a652
prerequisite-patch-id: 89d853cde3d335b4e64a916c7e3838002dfcd4a0
prerequisite-patch-id: b9d26c4def1381f787221ce31488b68f87982b76
prerequisite-patch-id: bc666083245bca23998fe9bbeb650d19b46b2862
prerequisite-patch-id: 1cee36381b200b8751ea96a7e83fc3670b5d4271
prerequisite-patch-id: 4c29cdca391d3218b7805e7922a9172f2b8fef73
prerequisite-patch-id: 038e165ee4f96ca3cc3f48a50b710d7284015085
prerequisite-patch-id: 134f3f86785e6ef4b69051bfca25865e56b4a68e
prerequisite-patch-id: b5a8c1c2bf723fc555abfb5441c86860893e8001
prerequisite-patch-id: 1779e4b48f79f6545290488334a38ff0c4cc4072
prerequisite-patch-id: 528aad451b52372df7e65843677648c336eefce0
prerequisite-patch-id: ed8868b6662e6bf1a967251fa4591c2484805524
prerequisite-patch-id: 52d46df785f901ddd6bafd8a9677dc255ada6a77
prerequisite-patch-id: 38fbbc69e6d4c34afb28fb109bf3c6e5520a3617
prerequisite-patch-id: f2fae44db7edb3015c0457d6579be9dcecac24e5
prerequisite-patch-id: d9d0035e9c4ce424b458019c45cf17bbf6a71489
prerequisite-patch-id: d4dc418728a2636b0f3c363c0eacfd8a53cf92f2
prerequisite-patch-id: 334a68530b79a422c7562c01c351509d6b2b4353
prerequisite-patch-id: c5911dcff7b6279c5b9082a8d1d220637d3fbd1a
prerequisite-patch-id: 576017a0daa39e7e75a99c7c8ebbd77cfffd71ed
prerequisite-patch-id: 8c217bffe8f01a35bb38abd9a14e5153a381003c
prerequisite-patch-id: d470eb81b416c9b5b97ca10ae082f918c44709b9
prerequisite-patch-id: fe2e74410a28b6b820d42bc726620882ea3e38cd
prerequisite-patch-id: d7e0cb6e04e8ed8316be39723060fc55b0543892
prerequisite-patch-id: 0abbd53cfc577072033c71b97b717c28f81ee7df
prerequisite-patch-id: 23d9dcc023a5bb843e7337fe0933d63eaaf43594
prerequisite-patch-id: 420ada482d92134497fecddba9f6218c57965aa5
prerequisite-patch-id: 8c902a36240e50e317f49b68ca9978c7a8cb297a
prerequisite-patch-id: 99334e2dc9da8cdfdc91ebdc44797ae8917809e8
prerequisite-patch-id: 5f8fec2f4f976785b49e3147ff584e3332382996
prerequisite-patch-id: 683d37baac7e80750c30d2b556017c946e32dcde
prerequisite-patch-id: 425a0c13cce3e8cd96008eea2eb514f280a1486a
prerequisite-patch-id: 528706085735593ae28d8089c2f71687393b67b3
prerequisite-patch-id: f4695682cbe946ee21143ce5a497ef516f77f89a
prerequisite-patch-id: 10948f8a117330485c3f0f1fe342c2657fed8d4d
prerequisite-patch-id: 9e1cb32d2542e19ea901417011de15a7e7f98a5b
prerequisite-patch-id: 755ec7f7a04163a3bafb9b289107be978c68cca1
prerequisite-patch-id: cb215b062f292fcc388de0d35cfe5cc9a2e0dfc9
prerequisite-patch-id: f7e7122e348bd8ec174d60fb5e4fb25801016fd3
prerequisite-patch-id: efebfd0583ecfdc6a8b4b1a3b19cf5698afee2fa
prerequisite-patch-id: d4e2d4fa01ff3d28318679c4e8c113e08e81f287
prerequisite-patch-id: a00af3fdee4d7e37454389c0ba52a5d62bcf4caf
prerequisite-patch-id: fb93a90f9f59bd7f877d519895a9c136ecfb1877
prerequisite-patch-id: 70c4ac3c4078ef622110aac7fa7214ac7786e55d
prerequisite-patch-id: 1de550ff7f700bdbd8b90b101edca2459849fc5c
prerequisite-patch-id: 6da29b93f63cebf33e44a87ef4d465a132ed0505
prerequisite-patch-id: 79033124c0b354fe6a715d95c8ad307a9e1abb69
prerequisite-patch-id: ae928171fcb7060dd87d9f569cdab71bc006cd7e
prerequisite-patch-id: 525b386fb2b0de0383b2e3766bf22c9dc6233062
prerequisite-patch-id: 4a452f0a454b7583c8e5f701874155f80bd7f053
prerequisite-patch-id: 73393bb637cc3255d737e6f47912e186169593d4
prerequisite-patch-id: 567f29c1f41d7fdb56bacca6e7623b4eeac16385
prerequisite-patch-id: 9f3305a837e9ea9454b88bd27affb290339feae3
prerequisite-patch-id: ebbe093cbcc7264aa97a54babb2c0644fde30e86
prerequisite-patch-id: 29991f85dbbfc98112cf1de09085d4143d88d5f6
prerequisite-patch-id: 725497e5d4ffe3aa7fb7686d2029f17edf7d506b
prerequisite-patch-id: ee314378c06285ef4b45c0a8ec18fecd6b0049be
prerequisite-patch-id: 9c525603fdaa5b91072c404aac9a29f8ebf39a99
prerequisite-patch-id: 71286b33e3e147f1ecfda81c1242eeedafbf34b6
prerequisite-patch-id: 91067612e1e7598962b07c2d4a320a63b5ffa260
prerequisite-patch-id: 4f497565503742b5e77a8a6a2a450001cd9965a6
prerequisite-patch-id: e0d2411f58a5f62907fa3d5a2015647d51a290a3
prerequisite-patch-id: 1d5fe151f69bf755c0e07638f0178b347c3f66a8
prerequisite-patch-id: 583bb604f36a856c53ad8b89006211ae2903d645
prerequisite-patch-id: e6dde9bb4d9613699e5a70e3e64d2affebcfd298
prerequisite-patch-id: 7766f02dd72c290ac3b33f61f84f4830e90b0b30
prerequisite-patch-id: ebb2fc05b5376f1ce4830e9214410bd8dd99ea23
prerequisite-patch-id: e2c5501aa0b65c8d5787a167241973b49a728654
prerequisite-patch-id: a9fe2395be1fd371e94754a4c9aa56e4b32a7e77
prerequisite-patch-id: 2c023c1f039f5b1ba11c92489b34a35d7e93af72
prerequisite-patch-id: b6e001917df9ccc9b7d86851dc827d5bff3cb494
prerequisite-patch-id: feee8003ece38267cb7eec60ad92b397cff9bb5d
prerequisite-patch-id: 07176dab20b98166b304742cad3e8e7b9f23ea6e
prerequisite-patch-id: 67d7fd6d9a0c8eb5df8773c95f22ea00e50e809e
prerequisite-patch-id: bb4f582e6a57bbac154896441e128afd27a39d1c
prerequisite-patch-id: a3d50dba8300a44d1307390f7516cb987d620e54
prerequisite-patch-id: fa38e693d2bc1581f5eff2438cec11dc30240b6a
prerequisite-patch-id: febbce57193f32feb88e7b609146529148821861
prerequisite-patch-id: 319ed6b77bdb5cb20cecedff86a96df6824d19b8
prerequisite-patch-id: cd3ecb8bd07cc00feafe6dfc4b495e2e5c85f9d8
prerequisite-patch-id: 450682327c7f3d270464f6a9693c73be4c6be3c8
prerequisite-patch-id: e434db61df9bea036e3401c86fb8f7d122b27923
prerequisite-patch-id: fc3d65cb100863130f89f2ebedc6615e5aaf1c06
prerequisite-patch-id: 610ffa753429e848ea24f07d961fbec85c539cbb
prerequisite-patch-id: 6e56e6047c1ed0bd6304d4d9b01e791865551f22
prerequisite-patch-id: b79c9af44241e845217d758c99ab16044455f642
prerequisite-patch-id: 0c873ea8f92903450615f119c955a5d7d68c9939
prerequisite-patch-id: 49903c493889d3d9635e60e4a81ab68b1fcc4f71
prerequisite-patch-id: b1c98c1279c7346069e12fd7b977e11ffd8b408d
prerequisite-patch-id: cace17fda21e6d8df457ec4e9551500d031b5d2e
prerequisite-patch-id: 1c9ff59a5f3bfdba7d623b25b8a8ecd6bcf8401b
prerequisite-patch-id: e95e87e07d547b0d3c0005b6be8eb6dc776b604f
prerequisite-patch-id: bd43848f61d7b2b85e545aa7e75299066def0112
prerequisite-patch-id: d87af62656ff0b319827d7cecfe4c94cd51e0886
prerequisite-patch-id: 6a4964ef7b7103147a7cd7dce4482584688d6005
prerequisite-patch-id: 4ed5546e00aec628ecafab4feb62931e2ff2cc67
prerequisite-patch-id: c07d77b7e688dc74be795bbb6892deb203fd4031
prerequisite-patch-id: 5f05c985657e617c6d3c65456bf9161b537da8cb
prerequisite-patch-id: 038324e750be699c8f5adcfdbbfe548f952250d6
prerequisite-patch-id: d841eb8f4773bde53de0fbbd844bb938b2b1d321
prerequisite-patch-id: ffd1beda50a40b310241ecdf5e53f9aedd3923e0
prerequisite-patch-id: ee24f0dcdb893f3850e9dd0d54e848782a1b9ed7
prerequisite-patch-id: 781c4ae465c2af54c28ef4ad7a3c142da8390cf0
prerequisite-patch-id: 5de50e537525f326cd3478f8cf88df947c66a7ee
prerequisite-patch-id: 78779cc26eb7bde308df40ef016b22f599109dce
prerequisite-patch-id: 33ece26af9665cd3b9377c684e8fd75bde373187
prerequisite-patch-id: 1ee9fc5cf027bc9211c1a5e1547036e33d30fcf7
prerequisite-patch-id: 30f092cffaae6e2adc8f6520af6073b9cd20c59e
prerequisite-patch-id: 90361e8b03b1160a73257cc7d69e32435f319423
prerequisite-patch-id: c7516d424e78d3fb0bb5cc889140b61382a1d1cd
prerequisite-patch-id: 571f8eb779bcad13ac8762519dafc2d0c260d6c7
prerequisite-patch-id: 27c86e0ecfdabca4bca4bdc44e1bc9db8c27634a
prerequisite-patch-id: 40a5ae6831ec4107ae32d74e948636837fa9e076
prerequisite-patch-id: a8952e1ae521fd6f757ebed446f15523791003ac
prerequisite-patch-id: 9b1f9a58b909abbf2d5d1653c5aee4965500da16
prerequisite-patch-id: 1899472b00e65d449d831d219d870119d007a36c
prerequisite-patch-id: 61f2676b531e4962616e3a71179980f107ba19f0
prerequisite-patch-id: cb2d1944bdf00161a49b0d8adf141f2304f48836
prerequisite-patch-id: 2516257ab21010a7090179dc3aea69dfcfabfd05
prerequisite-patch-id: 315b1e08b7a56949a9fb0527aaa6774762e2153f
prerequisite-patch-id: 8d6635c2f083aabcfd2230cf493b011d7d2e9069
prerequisite-patch-id: 7739a1453ce44fcada76a6356467bb68d4f956d7
prerequisite-patch-id: f0b45d6c483173803e619e53ae18dba2807e62fe
prerequisite-patch-id: ebd2efbc3ed6bfb135b7f08a54d57b8ad3b90a55
prerequisite-patch-id: 83bec2aa55513947dfc9616ed66a0fdfdb227110
prerequisite-patch-id: 9dbd34b4392b0f33a3e163b4bd4d4430eafe33ad
prerequisite-patch-id: d0e7ce9fc7402f4eab64305253d7c900d92cc72a
prerequisite-patch-id: d6d9a2ecd6b297b0930877b13d6a75a3eb00ac21
prerequisite-patch-id: bd6614e11f68d30785c81ba6e04d323fc072a5f2
prerequisite-patch-id: 06dd0ded6d548b4193e1fbc26cff70b294a06654
prerequisite-patch-id: 9dc28474b1fd7402bf41440d12c7f7921b16a364
prerequisite-patch-id: 20a924ab718aacf37b7c5ca6b1f231a255257089
prerequisite-patch-id: 7f0f0ba9eecd6ebbdfda665ad90b521b5bbc4dac
prerequisite-patch-id: e02060c5ad9b9318705be4d1c70b3a15935391fa
prerequisite-patch-id: bdc1102f479bb4fc6a6a944ebe5d3219c049a368
prerequisite-patch-id: a6a79c0a2341a39c7f4b98121f78aa0060b62e81
prerequisite-patch-id: 8c447547a41bdb8a8e08d378ea51b226aa83d1b9
prerequisite-patch-id: d06f5a4346bf9e6de62cff8da01fc121b7ce7c4d
prerequisite-patch-id: c4bc5cbcaad6d2e0a8770db227f73d62c3660558
prerequisite-patch-id: d4a1f23a677494c65973ee2db24936c053c40875
prerequisite-patch-id: 56677723590a476997d288ec75e59a685636b063
prerequisite-patch-id: 67b216305ad071425293886d5bddb7637f38c080
prerequisite-patch-id: bc52b3a78793440b6bbe6c18292b0e1fe64bbbb7
prerequisite-patch-id: ef28059b4b7dc69aee359e340c63ae4ac899baf2
prerequisite-patch-id: 591f3f0035d00c7329f0178de17b77bea94d0ae3
prerequisite-patch-id: c7df4a9b9cb87d658e1d5ef06026bdf1ee7c2526
prerequisite-patch-id: cdafafbfa2530726e76d59dea7184c4aea6a3cd3
prerequisite-patch-id: 89dd80c9747bc41b639b7544843c8967f1fb8f17
prerequisite-patch-id: 13d278e2a84428d51201332ae2247505b3f2c737
prerequisite-patch-id: 6190b691f4da820e0a84c2a02b1fe281e7277961
prerequisite-patch-id: fe172e80d6384130006fd4372b02b02b6e9f501b
prerequisite-patch-id: b8671fd03f9a82d0cdf11ed96fa2e4720fd6bad9
prerequisite-patch-id: 0765b0b32065f94a16c4b6c9518ae66f43153f5b
prerequisite-patch-id: 1e53190cecefde7ef02fedd6773c0cccb03bd001
prerequisite-patch-id: 38c5cba0be0e09285c1812013d7992a022a8cda8
prerequisite-patch-id: 9a6d2adcd22c32a266f3bca305cab039e0fc917f
prerequisite-patch-id: 8bdaf0849c4e0f06d7bf482c29c1503e1b06de4a
prerequisite-patch-id: 893a77a5737968a99f4db008a484a973d05a7d22
prerequisite-patch-id: 7904ea826097134b4036566b37077d91afbb86de
prerequisite-patch-id: 58d2815601851cf635edb7e466c6ebe22ae1c950
prerequisite-patch-id: f171b66fd2d694f8ba6126458839bb3b94e9ef23
prerequisite-patch-id: 30eae6641cb37d69b8a27e047198af2dfa6f05f7
prerequisite-patch-id: c4f939906b789eaed257d5e12c1d1607626f8b37
prerequisite-patch-id: 30c6fc98d045a8b9e86f68e9d05c4f3446048473
prerequisite-patch-id: 6b5ee25c72efd0995f600ca4f183a32d45cc934c
prerequisite-patch-id: a09753d6aadc5d640ebf82d8ef80be0748168661
prerequisite-patch-id: bde5ad5e2de366db856085fcc55332e5f0d6a760
prerequisite-patch-id: 68d418543460dbd5e1f1db1c8f746a146bc85afa
prerequisite-patch-id: d17d2ca01f92e1c06253f2bf657790ff35d986ba
prerequisite-patch-id: 90df95f5038b723c4baf45a4aa40075c04e68fb2
prerequisite-patch-id: b85afb93b2177023d77f3e9649b71a0121d76d44
prerequisite-patch-id: 7cf806bd0af2e9f5b50630669cb7bd13d4c41763
prerequisite-patch-id: f280f7e84c46a7791953fbd77f2afef77e250add
prerequisite-patch-id: 590b70eb559a5045e4495c5f9f3e9a282b007f4c
prerequisite-patch-id: 48093475eafa180ad9800e9412077adde91a2c87
prerequisite-patch-id: c016a68dd8b64371c708af46b674eb5fa41292ba
prerequisite-patch-id: b800a8f1d64826d0098afa9e38fef059c20474ad
prerequisite-patch-id: 6d78cdced492b5f09d9b0d0bce47d1cfb75db031
prerequisite-patch-id: 60497e1bb4265d49c090afbc8505e60f82af7d2e
prerequisite-patch-id: 57108d29b01b9746ce02eb77540fc9e64ea1c04b
prerequisite-patch-id: e306bd7201ec5665c0d45fb3f3870254b1201197
prerequisite-patch-id: 7d346752fc1f3c8e42f88cf99a83512575565ad9
prerequisite-patch-id: 6e69dcf4e34b6eb2858d8808e830cf2121dcb59b
prerequisite-patch-id: 27c312f180cb868e09151f430a74593dcf91909b
prerequisite-patch-id: aeeb54865428eb571f7ca9e6e572410db8b90d7e
prerequisite-patch-id: d8b810657360ce0e042cf94dd5e341817ed1ff6c
prerequisite-patch-id: ae106c9b72384c1dd7df89ba5d3439f9d0b0c3f5
prerequisite-patch-id: 5010edab228ba205be38a744589b1acfcf54167b
prerequisite-patch-id: 771fa42c9ac68f5188bb66620c97389633ea64b6
prerequisite-patch-id: a94ba4cc8cbc9f3991fd5f9340fe67ce8c19c225
prerequisite-patch-id: ffae3ca8c0f1ce0e26d5192a2d0118ea241976e4
prerequisite-patch-id: 27ce95344a9565b112c60361aca17904f257e75a
prerequisite-patch-id: 1b4ade0fb056bc89238e2133eb7e5f9e66ce45aa
prerequisite-patch-id: e6d39d7cc073b7059f6ab65444c66efb70f6ace6
prerequisite-patch-id: 8a072975637562f0eca8200c7e34884e87b069ba
prerequisite-patch-id: f7bf57d1a8c504d7bca27fa2e837dcd8eb9cc2d1
prerequisite-patch-id: 3aff4f2554100a7c3d77e4c3b6b075998fc67a3b
prerequisite-patch-id: ecad8bd80d9dbdc590e08a30a9174817e833862e
prerequisite-patch-id: 3db1720b8c06b267b10b6960e08080e147d29f06
prerequisite-patch-id: 0c5ae77c5d69cb108095ea89fdd072b1917caa9d
prerequisite-patch-id: cb8abae581e9173bebde5e24a676df0d748ff188
prerequisite-patch-id: 016ea160d9302b6b47dfd6c7b85c4d7b27cc4afb
prerequisite-patch-id: bdb36aaa0ee11124b870331d94a84d0407d75942
prerequisite-patch-id: d57837f1c1dbef4c3ecf6f545729b21d5b102e20
prerequisite-patch-id: a42dc9f73d188d8a9c65d3775d6a25dd2cc81eb9
prerequisite-patch-id: 9afdbd63460d6511828cb96ab287a2fb97e65b55
prerequisite-patch-id: c6c3161c8c004debea7985f5bf522293c12652b2
prerequisite-patch-id: 6158949a40553e358f3688c6d45e5434581b0fff
prerequisite-patch-id: 6a1a6bcbf00943163ecf441b6b930caf1a23011a
prerequisite-patch-id: 204e01aabd996bc3ab035014262f6b289cab84bd
prerequisite-patch-id: ae0c84429e0a838e10aa348d39f37ec12ae99dc8
prerequisite-patch-id: 92c14073c5f279b788774f354f0a6906ad0592e2
prerequisite-patch-id: c93e0562dd2fd0b6c487ca0fd97954800508345c
prerequisite-patch-id: 1fcab31ed52a0d9fd6a78f44cff43b589683bf7d
prerequisite-patch-id: 2b49d9d6f50149d2cf9f08aff23237a98d877915
prerequisite-patch-id: bc9b117ec74a1cc9ff15b3db1a93edae445080ae
prerequisite-patch-id: 2cbd68380197ca54bb87bc89a1c07e0adec22655
prerequisite-patch-id: 2bd91e6890daa577211b706d439883f6c010bf41
prerequisite-patch-id: 8d706caf3191be6bd0a6c984b79ad3c3d2e98319
prerequisite-patch-id: c3221eabc5eff63b8552cba9b8bbc113d857e76e
prerequisite-patch-id: ad714dddeabca73fa9b8f8e663ed8d30e9a57339
prerequisite-patch-id: e93a72d26da35de0cfe875241793306e3c2d8d38
prerequisite-patch-id: ebd7099b136cbb12242f51b36ed3ef8ec1d5a9cc
prerequisite-patch-id: 89d3abbde982060242347f3ac548cf0db0c3980f
prerequisite-patch-id: 8292ced08794a9b3c6ac95bb2df2a2faa80f0bf4
prerequisite-patch-id: 93cf411ef44f543bcd6cc1b91165e4d978174372
prerequisite-patch-id: 5a238c8c8bddcaae0633fa3107adcc1da70419e1
prerequisite-patch-id: 3430bf3d80aee9de812cf0d2bfdc06dee0c4f384
prerequisite-patch-id: 5cd4915eeedc74ee91785d205bf82b9cb8b04556
prerequisite-patch-id: 552829a8caea2d2dc44b310fa170a1ab014fafc0
prerequisite-patch-id: ab65e6d3c272dad3f31a99c0705d67e6f1601aec
prerequisite-patch-id: 94a36238bc76e44425d4c5349945a8356c2ac607
prerequisite-patch-id: 940735640685c7d1da93469b8cb4678217b14145
prerequisite-patch-id: 8bd331b765907b6c37188bcc693e39df31b61ae1
prerequisite-patch-id: d67152992af8c5110414b71baf91204f32f272b3
prerequisite-patch-id: a43b8df5612d21d378c8878ff6dd6e976b2ee6b8
prerequisite-patch-id: 27c3ef710ece62c1d733b35325aac6dcb623ad0e
prerequisite-patch-id: b132c56cf7d7bcfd3148684f069116346678180c
prerequisite-patch-id: 214b8d911eb7fc5c2f8ca25a5e509d8c2eb3e6b8
prerequisite-patch-id: 5cb23b7dda4056f8d6b3d035e1a0664a263a15fb
prerequisite-patch-id: 5472e8d76183081859f6a723c3d430ab3852edb4
prerequisite-patch-id: 873fd8b3158ac46d59253b1bbfa52daba1ec66f1
prerequisite-patch-id: 96e617b2a0126a8b9dd468a33060969f77dae6ce
prerequisite-patch-id: 77580554471ff080d597ed092e46a05bd239f8ee
prerequisite-patch-id: b42ef0786027ee950ac6887e4f520e3745042cfa
prerequisite-patch-id: 0f8ac9e0dd81662b681109b8460cf54750dcc348
prerequisite-patch-id: a51fae60b3fb3c9f4869393433dbea979b26e1b6
prerequisite-patch-id: 96ef51ff0e1d0c369903e74457f6a3d4ed6b7a36
prerequisite-patch-id: 19b6626c2346ad22f86f817f13c7793fb5632f72
prerequisite-patch-id: 8c37f7a4543f5b7a9a17eb805e60d253abf8446f
prerequisite-patch-id: 0babae89bedd79b03804275b871e5fa1a4fa6df1
prerequisite-patch-id: 826c479c151d554fc7c425f83eb944f20986ce6b
prerequisite-patch-id: 8244d5d0eb9e35f49647c5d34ed9188852d36373
prerequisite-patch-id: c928fca41f07cf37931285fc1b587cdabf15c779
prerequisite-patch-id: 29ffcbf9194f32cd4fc4c27b7e36ca5b1c15e2c6
prerequisite-patch-id: 5775e95ca9d53e3039357df7bdcead9327a1f4d9
prerequisite-patch-id: d43d1ca6073cef0b3b63e275483f6e180aa8459c
prerequisite-patch-id: 465673d20aa3871c54d32ae54d310ef8e3ff4d3a
prerequisite-patch-id: aed80c8f835c2c38d107853274b2e4120205220d
prerequisite-patch-id: eb53e2d5e5d48081e678973d3942ac77a635676a
prerequisite-patch-id: 7e17c53748ed9c1da08c982cb3b5797754808c52
prerequisite-patch-id: 1f0badfdbcd8900ca143956378abaebcf9442b2e
prerequisite-patch-id: 5747ab86d1200a711eb0fa5bea7dba4cfd3f9a5f
prerequisite-patch-id: c2ba988149180eb3c3e858bb518a9416621d6668
prerequisite-patch-id: 9c6d297bf3b3cca3f5f4db2f6411ec139edb8dde
prerequisite-patch-id: 24124ae4ddc3867c3f25df07988d86492e7c11e8
prerequisite-patch-id: c44a6b54d81d531ed2e8ad27105e9ff555e65d41
prerequisite-patch-id: 42da2bddb54a6d4ff583cc77b186f5f1d60aeae3
prerequisite-patch-id: cf142a8d7a211bb691e8d1906fd201c24d887ba3
prerequisite-patch-id: c168f60a66ac04c7e42b6afb19c82a0d090503b9
prerequisite-patch-id: 0e1585b962dcd549316fb5843358a6e8057d4eda
prerequisite-patch-id: 47354c8f964fff7279a2cd072ff3aa9e4b893838
prerequisite-patch-id: 42350027b87504193f2c6d3707d85dcef0f73388
prerequisite-patch-id: faebf278aa4cf31ec2f490290d52b2990b6a0bab
prerequisite-patch-id: 22e308fbd31ede91eeb5f8068b8d7a5e64fcc076
prerequisite-patch-id: 7b9294dd280289e2b72497c58d69f3fe37a136f2
prerequisite-patch-id: 32be20b9cb60456357159c2d426c92b4c3644f4b
prerequisite-patch-id: b772a8207d007efc237ca7a41cc78889a3c69671
prerequisite-patch-id: c8f140a12b3eac53e14abb0062293c8966b8cdd2
prerequisite-patch-id: 89bbe8c39fc61722e931b6035fb965baca4fa676
prerequisite-patch-id: 49c9ff68f7c0bc1cb5ce28959c1def3e7d4393fb
prerequisite-patch-id: 0e3053cba0a65c5d82e25695fb86693595a25c1e
prerequisite-patch-id: 7440134d4684320d65475f82e7cf3be895c53662
prerequisite-patch-id: 3ec88bffa73f515eea4bef32ae567cc4da83b71a
prerequisite-patch-id: 9faaf7c465225c97bf6c30565f365069a3af0826
prerequisite-patch-id: 6808b677499eacadec842e2084ba46f7ff8979e5
prerequisite-patch-id: 80efbdce42092c4ed4f30c82bd964b16ec6d61d7
prerequisite-patch-id: 2617db540dbbcc37b487890d1bc7f678b4cadd4a
prerequisite-patch-id: c51b4eee3ecf7082a28e3a8fa5ba654a0e2de049
prerequisite-patch-id: ca9ab1a3c0d17cc28824d47e661b2d7e434d5bf4
prerequisite-patch-id: 264dffe8248d6084de4e05cfc0dc9f25bef53ecc
prerequisite-patch-id: bce6aaeb405c151ea8b8eefb9319ecbe8ae6a646
prerequisite-patch-id: ef4df316215453cdb4922ae63f45b88ce41b9326
prerequisite-patch-id: 423a0c1c268243c9634d6a28e56d16908cad729e
prerequisite-patch-id: 44a3c74af0154c74ad80e9a7f82e9825803c6c18
prerequisite-patch-id: 5045cd28b6dc80f314f2912953f0157e4379ef11
prerequisite-patch-id: 651df3dcdb2b0caaa575d5f0a67c703c4b09e9ca
prerequisite-patch-id: bd0af615e2cc40bd604e715371a8a748625e9280
prerequisite-patch-id: 227c6634bc9267ac8995c9d12ac5e88fa71b4bf3
prerequisite-patch-id: ff2036b435b8be3f81ad498f096e2fc5774b3fe0
prerequisite-patch-id: fe632c4c186f02ecef2702cdb6a3ea8d2a8ce964
prerequisite-patch-id: 5ab3f8bef7555166227a3839488112027a025209
prerequisite-patch-id: f4fa5725bccac6fdf1f61f56ec270d12c7bbe879
prerequisite-patch-id: d0c4128778c0f1d981b9f01dd7b8f2b538d8944a
prerequisite-patch-id: 77160a7472fd527b2d1ccb3602797e6f0853cb5c
prerequisite-patch-id: 4501fe24c0971435745014aa8f8d0f59fae6780b
prerequisite-patch-id: b988f3c80242f0c0d785aa980e151f1a433a6617
prerequisite-patch-id: 615e585192b4167516229aeeddca35d153f602de
prerequisite-patch-id: 5fee17a0fae3db2388f7f210295082157d1da268
prerequisite-patch-id: 9ca386c5c9e03bef5f88ff2e2588da1b3efb21ed
prerequisite-patch-id: b53319355427e4e33cd7ae00b8467f53c33adbeb
prerequisite-patch-id: 09f13a9396cd1fee1b24b2b393fe928a220e00a4
prerequisite-patch-id: 42f99818dba696bbf65f5aa0d593a84b96b22a46
prerequisite-patch-id: 603db3240e5fedb666d123859d9a5820d41d80c3
prerequisite-patch-id: a351651db108e28cf68a9c562a3bfc0dbd071ac1
prerequisite-patch-id: e3d996f795d3c311899cc004a65a8ba6fa9b07f2
prerequisite-patch-id: 056191a9d20978f3164e1c0b73715b85d7bb61e8
prerequisite-patch-id: 642c2c34c8053bbb1c519940dbf31f2c2a0ec3e4
prerequisite-patch-id: 930a08b3f7672d648e643147edd677e5ecff5cdb
prerequisite-patch-id: d2b98ce77a71db8162b0a91bc22df38579a829ca
prerequisite-patch-id: 267e41cd8cfa9d1da2cdec2fb5b67543e6c88dfc
prerequisite-patch-id: 06c88a3804adfa3eccde75bf5c2d03955b585d62
prerequisite-patch-id: c2748604fe64aade0cf838468f3d9029f308e15a
prerequisite-patch-id: 7b64c1a00b0c21498ca193597f75e1f2bb43632b
prerequisite-patch-id: a3c595f2da26d777f13fc07131b63b8084a0d6e1
prerequisite-patch-id: 90138c72d1192363e5a60316bbd31ee3d6bd72b8
prerequisite-patch-id: 62cec10a798e668b485c865fdcac2dc7d3ba9229
prerequisite-patch-id: 4ac051898d617af5ee7c42660be6f71db6a23c41
prerequisite-patch-id: b1bae08cc448122d96f0862a33c5277f9f23dccf
prerequisite-patch-id: 4dd4073885213d45c9dfa680a0fb432ffe280908
prerequisite-patch-id: d52d6353739fcf09cfe91575f89af2d1d7dd826d
prerequisite-patch-id: d093969250b1b7f93a5296f2337b503382ce03eb
prerequisite-patch-id: 7ab7d59bf42bf2d0cbf7f9038dc09668813091fe
prerequisite-patch-id: 14f580de09a6a69020194ba19f087e34c17c0523
prerequisite-patch-id: d1ddc7b2b0ed7ba2f4da1ef1c68020a56f9d2cbc
prerequisite-patch-id: a6f3736420291aed71d267fc36c86b276f3cde4b
prerequisite-patch-id: d637c98af7ef2f61498ffc8e34968e497f2e9e5b
prerequisite-patch-id: 34a41cf830afaeeba53b342478559fbaa7c8bcf8
prerequisite-patch-id: 67e4cdec09d8792dcc80f933ad1f6feb04ca8d9f
prerequisite-patch-id: 0a0486553e14937f6ed793c78ba249dbd72db26c
prerequisite-patch-id: d7eca566abddc236da22062ee95a03f21f981781
prerequisite-patch-id: cdd86489c3448f3a81f775f160a35cc936ef2243
prerequisite-patch-id: 957915131fa0a26176a30627005842d902719fe6
prerequisite-patch-id: d89d560485d0dee9f191dffba573ed7d66974a10
prerequisite-patch-id: e70e5f9f751b5bd411a30b20152bac44ba070cd6
prerequisite-patch-id: 285d0b7ed9173bb92a5ad7cf77a3c42092fcb122
prerequisite-patch-id: 14e3cd5b3e4deb3f5d19e731247a8cd8dabee0ab
prerequisite-patch-id: 6fd58ff4e555e24ff768057b9c18d5878f5ae8a4
prerequisite-patch-id: d2d63431566e1d3c16b8f6fb8ba96126fa13480f
prerequisite-patch-id: 81afadfcdbb1331589ec6610d0f70fa982d5f626
prerequisite-patch-id: 04b2cd8c7931a45741237d17d779bbebf665d784
prerequisite-patch-id: ba99d588fb66cd24af1ac430be2a96ca6195d3d2
prerequisite-patch-id: 802f7b0c908cf7a48754416679b57ec6cfd628bf
prerequisite-patch-id: 907922ad268b07f23e58faed033fe4883eddfea2
prerequisite-patch-id: 61a7a816b702a7361820934b4629802df83a4f25
prerequisite-patch-id: b71655c5aa1143e2d4cadc3836af251cf82bdca9
prerequisite-patch-id: 8d5e2029e3c373d6324320f47e966fa4272b9214
prerequisite-patch-id: b57c299543ca5b4daf6cdf8dab3d7fc8d47aaa9c
prerequisite-patch-id: 01730171a2f0146452fbddf3357e03df5c962d44
prerequisite-patch-id: 158223ac3a44d0529ca05b489ae8e1e303931b76
prerequisite-patch-id: 7846fe59c44785cb031ae6b2bcee6606bc049087
prerequisite-patch-id: 2ce396679a9e781155241b212c431fa081bc7f4e
prerequisite-patch-id: aac55344723a0d846ebe79295b8cb43abcf13480
prerequisite-patch-id: 7470829563918771a88b10a2dbd62c7b610e162c
prerequisite-patch-id: 4ccd3f8207be52affe3c36afb608a828eaa7ecbe
prerequisite-patch-id: e98842cf54fbb6cba5b3fbf0cfe1925dd399ad51
prerequisite-patch-id: 94f99a35b4d871adc0b29f63c156a9cb47a396d2
prerequisite-patch-id: 95522d737934e4e407f7ebe3f5439ed4060dabcd
prerequisite-patch-id: 6cb63c4ecf602f377e85d4916e21ad7f3e9019a3
prerequisite-patch-id: 5f44bc4cda91e7b3765cb3935994b82344acb29a
prerequisite-patch-id: b1fe988e661e22e1c648b1ea8f162d47975f79cb
prerequisite-patch-id: e7df136bda87eb1bad5f94d514e814670feb5a7a
prerequisite-patch-id: 1d7c5300f4c9e28d33312ec3abf0c1d96aa950ed
prerequisite-patch-id: 3c1f3012b3da157a4735c2187d542c3aa972c30b
prerequisite-patch-id: fde770bd665ab09c91cc01c6992b047c221345c0
prerequisite-patch-id: 5e8b760317522a5110a4916336379ffb99785e69
prerequisite-patch-id: 8323003da5a1f50476bb29a0034396b97ddcb5e9
prerequisite-patch-id: 6990bc2db66f9348f572a112f51d548ae798f13b
prerequisite-patch-id: d97c68bf98ed228581bf28391f10b06c8ebdf776
prerequisite-patch-id: b3d337ac43e789eaa6ea020f7bcec3485c4538a8
prerequisite-patch-id: 907fd8580cde06cec0e21b969e0ba4b48361e3f7
prerequisite-patch-id: 2be382d227070c66486062c2952fd5addb3c1054
prerequisite-patch-id: 111d8c0de1243f0444fb8023ccee7ed43f526566
prerequisite-patch-id: 713c4feec9a82f044556398e585564d0d1c6f660
prerequisite-patch-id: bbb0747156789c1f788d3157ab1efa12b7b73fa0
prerequisite-patch-id: fde120d2e09cf2be0745d80a462548f02ecc0c3a
prerequisite-patch-id: dbf100d51968e833d88e964f2e1e9cf2fa7fdd3f
prerequisite-patch-id: dc948a599baccef79d14707d57627b84602dbf70
prerequisite-patch-id: 3a2336f40c29e47edf88cff13fe15ad2b672a0ac
prerequisite-patch-id: 439775e5aade9f95ba982978d6747045514e6281
prerequisite-patch-id: 02572c867a9ac818ebe9cc7ba598bdf8f175fef6
prerequisite-patch-id: 2f8d4f72a20a1763801e2aa252f0a4f7a0ad19d4
prerequisite-patch-id: a65e2b491737d047da1ac069b2d76f7124ba2553
prerequisite-patch-id: 9e74e596166e78f580f07674a145224c4fc42c74
prerequisite-patch-id: bf5fd4bfe74ede8f3b0b256774b5eab3bd9907e2
prerequisite-patch-id: a51cf25d0521b0ec6179a8025fd3faaf7c445c82
prerequisite-patch-id: 26aaa1c0553a6607d034b6c06db1291ecc80c881
prerequisite-patch-id: 2f2442c831aff3c5ed0a792cf06221b88ed46de9
prerequisite-patch-id: 08dbc07ae55e01313dad778ecda60b35cea50cfc
prerequisite-patch-id: e947bcfc89cebf696736ae14fb12e9d9d5343f7b
prerequisite-patch-id: 6cad066dae5e84b002432dac77f3251947573add
prerequisite-patch-id: a2db5327b18d3f88b31d335771f75890278381cb
prerequisite-patch-id: 0ba57489f6e707a782b4dc255e114a7e2eb5c4c1
prerequisite-patch-id: a57cd34d63b8595685374a06a8c91fddf842c6f9
prerequisite-patch-id: 0aec32fcd68e7277b6e4c2ed40bf5852d748d4ae
prerequisite-patch-id: 2a5e0bf43c0892ed54d4c85c2f516ed5d53a448b
prerequisite-patch-id: f7038ff4d8104adfd7f35e0124f07ad4880e175b
prerequisite-patch-id: 2b1097436ccf8b7a9cd1b2942742a1184739aaa3
prerequisite-patch-id: 575710c5b61d7cdb9f2a88be7b1e594582e1f850
prerequisite-patch-id: 22beb9fff2b62b4c89ae433064f803df2d192f79
prerequisite-patch-id: 1c0d32a55ff713e9722247dfcf3435108766227b
prerequisite-patch-id: 829986d8e9f8f584875f8f6794b92329ca0d5722
prerequisite-patch-id: 912b2c7d1095e4478ccf22134e20030305e4a608
prerequisite-patch-id: b7932fa45a77d92740d947b9dce9826bc5e444dc
prerequisite-patch-id: d9226b30b6e297a04971462aaf1496585df61db0
prerequisite-patch-id: 2096d6bcdb019cee7619cac8f19af37db130ddf3
prerequisite-patch-id: f0f5a8f71d8cb7120e9ce491922f0e9bfa53ab12
prerequisite-patch-id: d150f40967a506b6c834633c1383be7ba00f5dee
prerequisite-patch-id: 07225bf9d059fa28bf831d8ee21a7f6cb9c5f660
prerequisite-patch-id: ec0eaca4fd04e32a69826ac1a147f5109d5e1ca6
prerequisite-patch-id: 3353ea7456c597eb9f45dc07599d052e82b99527
prerequisite-patch-id: 16b1427e93c87db32ea3b596c1b0df6ff0de33c7
prerequisite-patch-id: bb90a8f767d52d4768df89573988903483abc64e
prerequisite-patch-id: d95300cf7b562eb4cd21376157f60a9de8925f2d
prerequisite-patch-id: 84d10ece0f85536292bb7f18b4d2eb9664e1e660
prerequisite-patch-id: a36f31f2100c4ff9e75f8e0660fba9529f5f38f6
prerequisite-patch-id: f0e0b57a0a0dcd9b84746bf309338af2be2109bf
prerequisite-patch-id: ccc6865598e84c2baf56568e1dc06d5f3010bae7
prerequisite-patch-id: 208e12cd222c716455900c2c227bd9f265066c8e
prerequisite-patch-id: 7e450a0a843fabf5ffa413812a76c866eba522ac
prerequisite-patch-id: f419c4c6ff6a798b3c9c2c4293930f85cc2dde08
prerequisite-patch-id: 33b69977329d3980f2a55de9fc50a8f6f0c64086
prerequisite-patch-id: aebbc1f518794a2116bbcf148b340388db37761f
prerequisite-patch-id: 88f912277288e59216dc474826c5bc22ed0f4ae1
prerequisite-patch-id: 9f99dbdd011383e64cfd7eb6a41ba7217626708a
prerequisite-patch-id: 9c82bce441aca08b5861ce2e5940857637d20226
prerequisite-patch-id: 003999aeed43294ff55443bf239a3eb66e83b565
prerequisite-patch-id: f9dfde3fa88ec97b7040c81ea6cc1fd773dcbac1
prerequisite-patch-id: ec14b134cf5a90e8849cec00d44ef774f576d9e9
prerequisite-patch-id: faf62866878628c79a22df3e0bedc5c90046b2b4
prerequisite-patch-id: 1ad25aab6f85f281a1c4e3ffce026b3aa58e1574
prerequisite-patch-id: fbc0d5e2e8e5267c1ead673dc727a78787812326
prerequisite-patch-id: 956540c383bf420483abb77cb2df818e97466c10
prerequisite-patch-id: 6c2da6b97f4d82e6a4616c11b04cb4a0a324a1cb
prerequisite-patch-id: e98b7c97fc6edcfe0ebf6302ed7e820b391c5a89
prerequisite-patch-id: c2a7826da939789a2cd38f5c440416df31d1c63c
prerequisite-patch-id: 4ee48da13c01d36fe20c02b0287cf274b6b5c24f
prerequisite-patch-id: 361160c37b1a58cf6f93d4b72769f0dde7fbb6b5
prerequisite-patch-id: c23329cf5d8caaf8e5c058a028ebddf9f681b5d9
prerequisite-patch-id: 721088671538badfdcaaf0ca926ae49647d5f697
prerequisite-patch-id: 7c95322af67680aec8de61d6a2740731baed525d
prerequisite-patch-id: 7067a7eaf345bb82450009bb9116aa960de314d0
prerequisite-patch-id: c8364f24221a759d000faab9a488795540ff1c0e
prerequisite-patch-id: 137480105d0fb2627462ffef3f50e822636f6863
prerequisite-patch-id: 455c57d46524b74a24c66e6fe06f7c6f73e9a13e
prerequisite-patch-id: e3c2e25dcc9f282c5a9a1ea623d74e607efdf092
prerequisite-patch-id: 5f467896e55b9cd022f4f659625b66d6f9b08c3b
prerequisite-patch-id: df980f59e7167b64f6dcac618576e95e670a6383
prerequisite-patch-id: cd4668e372e90e7a977dc929b01649bbb5fe7b2f
prerequisite-patch-id: ae0cf035bebb0afb0922dc1d22d53bb505636d6c
prerequisite-patch-id: a497c6a0c803d2ae25f71460eee3fe8846add263
prerequisite-patch-id: 9bac0ec3d927a5012b7d0bf3f5c8cfc4ce26fb8b
prerequisite-patch-id: c3013bf137a65c18c81025fc50ce8100db761426
prerequisite-patch-id: 7bf1c74ed92c6af539cdd8681f95343bd3af7505
prerequisite-patch-id: 42711099874b65e485a2ea1dc07a156b3360ac0b
prerequisite-patch-id: 00b80fcf51ef8ba2cc3decb5b5c9ca0ff5ec9d76
prerequisite-patch-id: 8d96074013ed74fc2dccca300b000e063b47bb1c
prerequisite-patch-id: e6e83cd1957bf12ee300cb5fc26247d2e952f6f8
prerequisite-patch-id: 36a4db67e91376282f53609c4bf545e07ac650d3
prerequisite-patch-id: f66226f6fb1b52172f6e242f499560abea08b882
prerequisite-patch-id: 605ec167fe9cd2bc04a0a391edf3ce01c3a5e085
prerequisite-patch-id: 231be7d19713989d3145f93368fce66fdcdba529
prerequisite-patch-id: ad4810ffab137692295346dc37467a125245c701
prerequisite-patch-id: b620fea9a47f0e6c02a1f33bbd3efee3b0d88503
prerequisite-patch-id: 53a419e553fcc8b26b731524077dfc7dc7670513
prerequisite-patch-id: a538e2d3a7c592488387620844fe9ff3ec8d1130
prerequisite-patch-id: dd7dc14303b6395dca3db513dc8b81aa2f1e9504
prerequisite-patch-id: 23a9d57c39c65b4efd7914f245a38f2a9e2bf421
prerequisite-patch-id: 289734495cf98297dc033a93a185a76a33775fe4
prerequisite-patch-id: 7e462d8476b55f925a971a73b65c5ac71b9c97ed
prerequisite-patch-id: a872b92dcf840f7dd171e344cdd43b12adecae24
prerequisite-patch-id: b3bd2f53900f953135e1a50d76a2ec3cd4acf6f0
prerequisite-patch-id: 94039f71ed5b285ef8a2a46a3322ecaa507c744f
prerequisite-patch-id: 434c7d68d5998b709923947bea7a30cc9dd46966
prerequisite-patch-id: 487570749ae080f0d9870721a7e3c8571b2076a9
prerequisite-patch-id: 9b6fd1d51dc2843235b6bceae9e0ea9d155a018e
prerequisite-patch-id: 6d0c90652e561ecf6fd6163d73d61ed18dbc9df6
prerequisite-patch-id: 10bb419d9e3f527385182fe708e81d7c80253868
prerequisite-patch-id: 78582e0cfc4734a78f3cdfacd58df40adc090d33
prerequisite-patch-id: 70c81ed761bb86920d59c09488c03e5a5f7bcbde
prerequisite-patch-id: 923591aa8a7ee8378afe3c92a9b641afd257dd9a
prerequisite-patch-id: c14e4f3984da1d5f34d52364a9059a764c32cbe9
prerequisite-patch-id: 8d320de0e079ebd378cd9c62683dbdcf3b0fb2fa
prerequisite-patch-id: cd2edcbacf4c2b86de8debdacb8b3b3338884e50
prerequisite-patch-id: a05b13127b1d2ae896c77090341e3e4b879e963f
prerequisite-patch-id: 9d8a2d2e655474e34460d38207e0c104a7d2873e
prerequisite-patch-id: 6e04c39b7d60e5e6c2e2980a8799dc9e81ac69de
prerequisite-patch-id: 869ab20a9ae784f697ee1da889816415a8cc99d2
prerequisite-patch-id: 22a8380b11491dece16ec6bb3e92fa0d52576f8c
prerequisite-patch-id: 453a0cdf6a9f7d773ce6a91f7d8ef7f85ecf09d9
prerequisite-patch-id: 6d4435d5c50cf02c6f87876a73c754a3c0b78547
prerequisite-patch-id: 85e0f28260e21afc596a91288426d6670e834579
prerequisite-patch-id: 9186c1eeaecf697129c4c31c235d07f745865190
prerequisite-patch-id: 75864e4714bb9276f2159aaf44e63ad76bd62d48
prerequisite-patch-id: 6b2ef9c04453d0ca22c7197044191d3eed66d3ce
prerequisite-patch-id: ec9081a129777ffff6dba4ffb9729e8515076116
prerequisite-patch-id: b3a503e9254afaed835406cefb1eb6c8f4585217
prerequisite-patch-id: d0ed8ac2f73bc74fe83a52d3024f9c03c3b2d1c4
prerequisite-patch-id: 3f54989f7e005db934ea165fa82eb7c7363c96f4
prerequisite-patch-id: a3f6de72183747cef8a4668da828c74c2ca376d9
prerequisite-patch-id: a4ad7f5c9a1ae3a9a2d19eb62d464d99c6132c75
prerequisite-patch-id: 8556d75bcb16c97f334e3fcc2bcffd000d243ca3
prerequisite-patch-id: 6edadaa4af140e5f8f3c286972d0ab9d40c1728b
prerequisite-patch-id: 0d6160bcc982b948f8cee02cdb4e0c6bd4533cf2
prerequisite-patch-id: 5c93292a734a56e02215475862bf03159723af53
prerequisite-patch-id: b64a3065445e6520591d60230e62a745df0c8b3b
prerequisite-patch-id: fbeec3dd07e34a17920e0c476a1bc6dd7f2e60b3
prerequisite-patch-id: 59f67fec2fb8444d0962510c0d3f17b2ec407812
prerequisite-patch-id: 93989bbadb462e46989a3b997e0171a95eacccaa
prerequisite-patch-id: d7351d1a1faf0b0d798244b61e8571e0d50526d7
prerequisite-patch-id: 446b59d3ed19fb45293ff2aa28f46b31ef4ef561
prerequisite-patch-id: 69ca2eef5cf43ab12dab3cb5877b3eecdcef4bec
prerequisite-patch-id: e64a37e1681ff3487e64aaaba17b8a73cb4e1d3d
prerequisite-patch-id: 9726726232f9dbe830963954c624f3c9a100d4a9
prerequisite-patch-id: 654d90f9cddec8b41e6fb1b3776a632606fef88c
prerequisite-patch-id: 636f26f067843447d8acf4fdfd4c37d9cc7b788f
prerequisite-patch-id: 5a8cc338bc1573862c3a6de6afe540e2b3ebaa63
prerequisite-patch-id: 8bea7b32320a8db9cf85f3f64f414681399513b2
prerequisite-patch-id: 612454961a6b4be7c964fc7cc1973394adcb651c
prerequisite-patch-id: 8e146d9021461f1d5929390f4d2b3b86901f1480
prerequisite-patch-id: 0d260ee1ef463ba74651cca68d7800494b339ad2
prerequisite-patch-id: 2195b4db8d48ab584f7520f58eb399156523ab6c
prerequisite-patch-id: 79d706495c1563b32f963c5ad7d2fc5c41660ad4
prerequisite-patch-id: f70c7e62c106bf23cebd6aa895d37124e72c9689
prerequisite-patch-id: 744cbfe688790a608e263e4c1855735994201132
prerequisite-patch-id: 2411708f5dcdf9578a8ad94f42ebea52a05b77a5
prerequisite-patch-id: 318034d582b0f3c2f4a9b16a6da29ee8894d56b4
prerequisite-patch-id: 66075b408fa3eab72287b54705716e340b144808
prerequisite-patch-id: e4dc49a824d9324a164d9794670c36d9f45f251f
prerequisite-patch-id: 656b5f7744d8e9fbdd28fb3a20675ced7fd468a7
prerequisite-patch-id: aeeaef087bc2d5544721574f0800882d51ade123
prerequisite-patch-id: 462ccad5d09120ea6eac3f26370913ebc11b78e3
prerequisite-patch-id: 1248acdf84a3aa9dc3c38a244119eea421f2d4b3
prerequisite-patch-id: fe6a2434f569236adce6c6f45976287b44622805
prerequisite-patch-id: a6e2d4193de34bce03a1a5da26d9b7270bee5558
prerequisite-patch-id: 3b35bd043b19a4d45ea207a799dec9672ab9fada
prerequisite-patch-id: e9b6c452c84d410e66bd969a524e3387133756f9
prerequisite-patch-id: f54c6b99e8467451602c73dd219d1823f8a674eb
prerequisite-patch-id: 827bb4a517a2024f65d6764d5fc3885647f8ad7f
prerequisite-patch-id: 898c1f4391897a6f5c3cf886dfaebd46922499a1
prerequisite-patch-id: e937864451bb78ae52c28587fb50a3da9160eaba
prerequisite-patch-id: 7f0849c485102ca2a822d59918407510b4212548
prerequisite-patch-id: 9fb9b76ad70f4267166725584560f01210494441
prerequisite-patch-id: ca8f6e8daf00660dba4fc7fdd11f4173d215459d
prerequisite-patch-id: f35d8d5d733b2832ebc8c5c40d5804a29e7f576d
prerequisite-patch-id: 1f4fbdb7033e83b4768fd73f88161ca5da384400
prerequisite-patch-id: b4ed7e8eb732e53bd34917fa087cca2c855ae287
prerequisite-patch-id: f3c97c0700bbc6f6d4c79a56e1cb2997aab533b2
prerequisite-patch-id: a85174de405141dcac1af6abfd9242a0039f6cc0
prerequisite-patch-id: ef4d26f2bc376df554a7863a441793385a5efe08
prerequisite-patch-id: 8cf96b489c3979e597ef8386e52c2665059fb3c5
prerequisite-patch-id: 3333e68cf707db4db25ca44fbb51142dc284fd01
prerequisite-patch-id: 791cb84ab82ff1ca00c1bd52db8f0ffa321a267d
prerequisite-patch-id: 66dff152592cf0d6f466e3030a79410624d3e346
prerequisite-patch-id: 9e601353615fe7fc16c17f02be5319de85214ed8
prerequisite-patch-id: 9997137b4ca6eb4db334495aa4c3f6be3d30c0ba
prerequisite-patch-id: 4beeced311f28aa8b6ad0d10aa49d8fcf33312c8
prerequisite-patch-id: 637c84af04aa918f7f837272faf37a0feffd6dc9
prerequisite-patch-id: 0e246bb97a057dea5217158d2f0d1b4f6e643448
prerequisite-patch-id: 5bfba887b37e1e889a0e9b2c471c947a30fb7c94
prerequisite-patch-id: 61fce290c7a6cf2b99fcc99fe21777a888ab0406
prerequisite-patch-id: 39c4804d1aae994b9b3264db5642526315e53155
prerequisite-patch-id: 8966a90438f5bc69ddea02fc3eb3d621f65c0a2b
prerequisite-patch-id: 49bceefda7e96296969c4659abcb431af2fde474
prerequisite-patch-id: 68f0d74b44104a09fd8a65e624d8b7ea5910b455
prerequisite-patch-id: ef05f158e3dc1857f8b04a4ccc218173c46b97b8
prerequisite-patch-id: 768a4f619e336f8ac443ce596a986615834b0893
prerequisite-patch-id: 301e8c7d101e86a1356457927ef5e4cdff6d8b35
prerequisite-patch-id: 00de52fd2b7aca929d60f6f75809ca79453c5d5b
prerequisite-patch-id: 540d42a7126cd7401780183ef72203671f10cae2
prerequisite-patch-id: b8e48475241bb2e714542e7c08c1cbb8835faae5
prerequisite-patch-id: c84df6d48271e43e9e7177d1ae56acdaba508b16
prerequisite-patch-id: 48d3c121f09b35803db02570f643d26548b23d33
prerequisite-patch-id: 303a17b9824b684031d4464d749330a81fe8525f
prerequisite-patch-id: 53717cbdfc41f55fe68ea991f3e4c996bdb43936
prerequisite-patch-id: 8c163b9611ca5633f8347763e09c4b1a45e92fe5
prerequisite-patch-id: 369a1796400dec11cdef97d1cd9b90c07966a441
prerequisite-patch-id: 3571a85824040e3b78215a5613b92690a15b3745
prerequisite-patch-id: b337af1048a89bb4722ddd7882e2e792f691e90b
prerequisite-patch-id: da4872b9ae28ac9bde38019958ddae3a576b3f86
prerequisite-patch-id: e6866a82789d6920c10612a343a04bb2ccf78e1f
prerequisite-patch-id: 38ec6894263f122084106d36490b590ad1bd69c1
prerequisite-patch-id: 7f908018e5337d67ba384fa6e735e0b2327aa7e6
prerequisite-patch-id: 50e4ca30154d2e483a582c8e4ba3138082e738e0
prerequisite-patch-id: 01e31b8594359742e161631bdab86e2978de050c
prerequisite-patch-id: 361316500fe642c68f6fc6fea72c50f54cbf5b10
prerequisite-patch-id: 93c36ae4ec225087aa87735da45ca68d00f18b59
prerequisite-patch-id: bbfc6bc11ec99deb3e7f93d904c01b47d5c5fd00
prerequisite-patch-id: c9d9a84dff02c1b4b5296db48dd81973ee663731
prerequisite-patch-id: d42b8a2d275db71d2221ee1a3f676e818680e898
prerequisite-patch-id: 488aca3bfce4d81e55a7d6c53fcdf6fe17dbea76
prerequisite-patch-id: 098fd7ccefde293338cf7d2198653af9d2d1de86
prerequisite-patch-id: da12a2effe9749a09fb0ae79ac80396df376fe9c
prerequisite-patch-id: 54622be7918b8113ded6856c8f50fceee88a7926
prerequisite-patch-id: df5dcc64c990198d731f28330b57227a245ba745
prerequisite-patch-id: f31fe9e520d09fe56c06143ee3fa3e2d25d4687e
prerequisite-patch-id: 00ee69d4deaa492b447a3f12e2cfd95814545bcb
prerequisite-patch-id: e5ecec0808a89f2932605b0b4b4fde282bd2de57
prerequisite-patch-id: da39da47eccafda837ce5e6e6cbbf55f5c60d940
prerequisite-patch-id: 90824ba60aaf48b9fda810142f3db92f5bbf1e6f
prerequisite-patch-id: 2f205eba5dac0a4197fa1b3ba6bd3a90e6fa609a
prerequisite-patch-id: a936133a4572b3d23416340e14a756a8d709a27a
prerequisite-patch-id: 3f9a7ed921dbe9f01edff7ecd42d55fbe40d1e41
prerequisite-patch-id: af07e76cf0c067951e901acc15e2bd20f6a58627
prerequisite-patch-id: eaacfa9483309d0cd53d5c3031246b7a1144c224
prerequisite-patch-id: bcfe4c751d0ab4e65e700f7609737f13499b9cae
prerequisite-patch-id: 097e32b4713189c1c0c8a78995fc24afbe16de49
prerequisite-patch-id: fb946451f28d8fa0ad198f76b2f24fa22713e1ed
prerequisite-patch-id: 815d6ce062d7bfb54a341abd0fb1b0b8c163e394
prerequisite-patch-id: 72c2f95648da6c925273829e81848055970c7617
prerequisite-patch-id: 5b2f0fd3938bde20d080f5058622856175a68130
prerequisite-patch-id: 6b13003d93ec9d25b6fa3c7d62c520130a8e8a2e
prerequisite-patch-id: af3917a268c5fab4105aef396fc90fdeb619dd81
prerequisite-patch-id: 2241b60e6bb6c834100749d4ab8fd5bb8cd54e01
prerequisite-patch-id: e6547dbdad423e72ab87971995486257c1c544ba
prerequisite-patch-id: 9d53e2465006f576305ad5af25a52ab0d0e6caa5
prerequisite-patch-id: 29c35fe3f2a21e14d50df6b93b58c27457353412
prerequisite-patch-id: 9985742e5d6fb185cb06cd6f5b0ed1d1ee6c4429
prerequisite-patch-id: 154a4dd34e582a8d0eef4a57768f77d40942edd3
prerequisite-patch-id: d8548af17b96b20df7d51a8b2b4a22dad22c59c5
prerequisite-patch-id: db5105890b0c9cab83f8ce000d1ae602360d7f10
prerequisite-patch-id: b89e73811dd1f416616e9e797fa5f58f219b03a3
prerequisite-patch-id: 410bfd6d538314ca5308aae4edaf749daad47e7b
prerequisite-patch-id: f571220b0960d7b54cc265392b9e4624ee155eef
prerequisite-patch-id: 558524d22583502d985e06d061afae1df84e4a99
prerequisite-patch-id: 80b0a427eeca1ed661cb4f4c28147053a93d3e70
prerequisite-patch-id: a888008563b1e90f32302886415ef91ebbca5866
prerequisite-patch-id: 8fd6a8804a32354e07233398f542c84ff35d28a3
prerequisite-patch-id: 4e39eb5a0f684a5faf02fc24f33dbfc40acd476e
prerequisite-patch-id: 440b75562b0eab10d9aabae1f6254852bf9cae63
prerequisite-patch-id: 4d2645d8bf7741c19bee8a27b8f9f65dd9b11b86
prerequisite-patch-id: 90a4355f25471f77fd5ea28938076274482594ce
prerequisite-patch-id: 43bf7a9da1f944384b3a7c0a3521e898c1378a0f
prerequisite-patch-id: 5c59026de6507390d8b40d5b680b0030ca7f80e9
prerequisite-patch-id: 11e9e6be4e476e22090d0011e266a1f620724df4
prerequisite-patch-id: d437fde2c02f8ffcff701ec1efa069ea67bb249c
prerequisite-patch-id: 247833f40522534438e4e383291a3299eae36627
prerequisite-patch-id: 6b0e41bebf3b1f5aefd8c0d8486462a149964d29
prerequisite-patch-id: 0cb97ad5b6759d7c16755040fadb5c0a3eef6770
prerequisite-patch-id: 3abb131309af1a50360d2ef11139a98ce3a5dfa0
prerequisite-patch-id: 541da4390f3691998d4e55023143da19abfa1431
prerequisite-patch-id: ae4c4d12b4f01a28122f7e143ce9c98e8b46e5a0
prerequisite-patch-id: 76ebdc6fb93c92cdf0c15b6faf30098d53e87e7b
prerequisite-patch-id: c64622a871fb22011af8a6e91a896d491833c212
prerequisite-patch-id: 90b8b73ec42df15d6d7d3f3f2773c55247b16fe1
prerequisite-patch-id: 610f7e72230b6138e835fac3ad228a56fa2fd110
prerequisite-patch-id: 419bc957ce86eec4c0b976da9264e4957a326ead
prerequisite-patch-id: cbff4aa808fca0662b34de605b8dfd77768a4d0d
prerequisite-patch-id: c43aecb950867f7b836465d2c5da9cb36ac6cce6
prerequisite-patch-id: fe7a84f3d4c83d09afdf3fc41b04809fa9f71fbf
prerequisite-patch-id: 71b39b7e605b404366bdd95582e7d484599d1c18
prerequisite-patch-id: c6f27565d841df6f12b6f885a53d993e88a04056
prerequisite-patch-id: 985e2c7abe83ed7205e4e4a3c185f738fed0cf9f
prerequisite-patch-id: 5fa0ad017cbd6a488937695c18c2e6c085864d28
prerequisite-patch-id: b8fc912ecd3bbec1163a68c185deed66279892f6
prerequisite-patch-id: 5aa67cf9e79489a873c6202fdc16ad78bbc8f416
prerequisite-patch-id: eefa0bd10771ba7ce4741571b238a78a8274141b
prerequisite-patch-id: 34876570c3acaf425fa8e21d7e5abedd0466f0f1
prerequisite-patch-id: 6d0de69627b6e90c1497b5c0e318b5ba41766189
prerequisite-patch-id: 0ee375b4e184702eb1bf0d57b7442a544d8598e9
prerequisite-patch-id: 0d355988b8534c5e4d856eda6d3defd1eaeb1512
prerequisite-patch-id: 962727682ec74e78aa9ad3a39fe50eaac1c9233c
prerequisite-patch-id: 9d848b13bcd84974f5f58640448a6edb3e472e33
prerequisite-patch-id: c7f3cca22cb8fe551828754388280a3dcc6ed127
prerequisite-patch-id: 2e79e0fdd3a3efb31be64cbbcf7faa3caa6c2381
prerequisite-patch-id: 43313448833d1b20381bd4d4704aae18dc8b70e3
prerequisite-patch-id: 4916acb0186102f506495bd58ee4182e038976de
prerequisite-patch-id: e0f8cce701e0678e8c5c28c06a44f7b98db7ff59
prerequisite-patch-id: bffc1e76d966dcc888ba1a033ade4c94a75f50fc
prerequisite-patch-id: 390cf228695cda33be779e97d8aeca1e84643861
prerequisite-patch-id: e2601182d1aab078d98e80cf9af967bb383e7f27
prerequisite-patch-id: 73fb50601fd11d18371aa6c9a190fcc6cd8fb684
prerequisite-patch-id: 7ae8ae2df33070044cda5090a3bac591cc038fd2
prerequisite-patch-id: 204e605a39f61409ce82ec101dbf48488acb924e
prerequisite-patch-id: 0c7e69acdcd3d5819418babb9ede4bc12cad1115
prerequisite-patch-id: 7ae842b388ad0de9d03e558c75326698b20d80f6
prerequisite-patch-id: 5c567c182a9ce9f8399a2078ecf2105393add99a
prerequisite-patch-id: c30b36876ad55413e83034a767972eaf11de04b8
prerequisite-patch-id: 85a464b3199e07e89002f15824859883e9b5f675
prerequisite-patch-id: f6b3b81395a8ae17f9485eb015dbd2648019c1b4
prerequisite-patch-id: 2da21afdc34cec7de172365733e2be9d7f4df393
prerequisite-patch-id: c40f53c34b1919bb686350d1fef846ea12e2167f
prerequisite-patch-id: b5cb0e99e509ce266ea5a65eda3488f6f99bf49f
prerequisite-patch-id: d4979f32f58f359600449bcbea3f08b736e55422
prerequisite-patch-id: 1a78a47a6d68c954779018f65fd6165069b86b53
prerequisite-patch-id: 9f34662db36a7bb71a04052ff85754a4a5df34fe
prerequisite-patch-id: 7ae294dfb091bd134e378ba817daa6067a7b2174
prerequisite-patch-id: a76d8fc130a76e8b5d90acfaeeeee7229307f556
prerequisite-patch-id: 3186615ac4ea4a8a1dd22e1f6d748a61952a1fa7
prerequisite-patch-id: 6c8f6a182f8afde1d2dae99ac521d7bc79fd415e
prerequisite-patch-id: 78cbf6921fd60933a35bea839f91812b91136eb3
prerequisite-patch-id: f253048c5d5a4a25409bb0e93fdfcd09577625b4
prerequisite-patch-id: 41910ea44d610559bda2648dff2b1fcd2763fabe
prerequisite-patch-id: c2efe3ec89e6edf1aa6cec2d703ab3480282ffe3
prerequisite-patch-id: 1b0c25d626ba37fac43e52e80946c0f1a6521303
prerequisite-patch-id: 9a3addd05674481ec9c839aa9f058c56a14da226
prerequisite-patch-id: 3125706aaa9c6ab945fe07a1d5a742b657fb1822
prerequisite-patch-id: 15e31b245f65b44cc5f32dcdd509b8cb26026ac9
prerequisite-patch-id: 1f3a2ed75fab72c05d5cf7694724c76410b997e1
prerequisite-patch-id: 57ce59607be0484e790fb3ea65db3cd6e629ead5
prerequisite-patch-id: 04d10b69b5a0cfdec99e7fa6b9f95ef2298fd347
prerequisite-patch-id: 2ff792455adbed8f027dcaf6f99d6fdafae95fbe
prerequisite-patch-id: 988949152ffa37e38f7e53ffb5c30c124d230652
prerequisite-patch-id: 54f6191cb77fbb42892024e9dafd2107fc6b18a4
prerequisite-patch-id: abf44296130d7c61e84398bd784f86dd319bb053
prerequisite-patch-id: 9c1250090054827201c4023a940c75ed20a19b78
prerequisite-patch-id: b82b44d2243a5514ae55c8f729b017be2b517c84
prerequisite-patch-id: fa68d23b4e182055afb660a15179fa24ec049fd2
prerequisite-patch-id: 0d421a2a161822a6deed19020cffc669e6f60930
prerequisite-patch-id: 8db05619c3a71143eee23dade5f7c110a3261f53
prerequisite-patch-id: 225d9d36978f191c7c43170a95a31c0d4a80321b
prerequisite-patch-id: dc48e42af1f4357f290f3a978e5c152437ddf2dd
prerequisite-patch-id: c85088f0aa37528602b51864237701119aea92a1
prerequisite-patch-id: 39fb6762d29e744055bb2a9b07b7dd7b2cca46f8
prerequisite-patch-id: dba90f26189b8a232c25603b51446caec4211dee
prerequisite-patch-id: 68fad6ad412e67e562b4275efe6fed9ff573bc73
prerequisite-patch-id: fda8267e7ddc744aee39e7268b409092414e2732
prerequisite-patch-id: 938c6051f79a8b855c2952a36aab81f33600e674
prerequisite-patch-id: d810291e11ef7cf8f81adbf7ba9f876aee12d9fc
prerequisite-patch-id: 2212da1fdb2c31169fb2206c853ac07bbff0454f
prerequisite-patch-id: 2e0787dddd6bc3423bb2bf97f72d6225dd7430ac
prerequisite-patch-id: 4bc022952e2d8b159ee283adc0ae84dae1a23f86
prerequisite-patch-id: 81b98696231e48768dfd9dbd12eebcac99812666
prerequisite-patch-id: bd313e1de6f0dc5572cc7f37c66ef51eb5de0b43
prerequisite-patch-id: 72a4911cf0a2990301ff7ac201a442c8364a9d32
prerequisite-patch-id: 673af2de197da95ca8dfbc5ff935dcd429f73ca0
prerequisite-patch-id: 77885b66ecefc7029a54a43211ad2bea545518c2
prerequisite-patch-id: a86a4dae64fd7ebe895d79053b4725b54a9592bd
prerequisite-patch-id: 169980e152c9239a0d8d3963d72a05f4fd9c51a4
prerequisite-patch-id: 405d124530893329fd15a080d7265c1279640708
prerequisite-patch-id: bde13c304e7ae525a9aaacc335380144798056ea
prerequisite-patch-id: b63fbe629f8d3ad54d9fa8ac9e989ae454fef626
prerequisite-patch-id: 0185b581d063adf0395fde515223e961fdcdb925
prerequisite-patch-id: 25a49a44b2199d59d1ec46665c0921beacc37ee2
prerequisite-patch-id: a1e73bcfe846020ccb477c6c5d512463bde2516e
prerequisite-patch-id: ef274cd51e038a31b2f65241caa629a9e90a4380
prerequisite-patch-id: cb943949b530dfe48ac7bbe10698e39df320c340
prerequisite-patch-id: 248e9ea27eb1450cd3429a244d076ec4479fc2b9
prerequisite-patch-id: 5687bc1318fa9c9376ee532b0c5fcbc85849be70
prerequisite-patch-id: c288cce50cfb4df0f3cf23c0736473db09d18dad
prerequisite-patch-id: 45c34e8c1942d4e284f33480a60369b2af512363
prerequisite-patch-id: 46ad7958ca268bae79f0704454b0c3fe648313d0
prerequisite-patch-id: e4db6256d155d5ddee6613e846f3659104604828
prerequisite-patch-id: f12f8b38464169246332d4ee3abb0f5d97458642
prerequisite-patch-id: 8f14802616ecf7af918a422e58751dc22c63876d
prerequisite-patch-id: 90c96c0b44fe350e4d0034d1e9e21060ed4d8dff
prerequisite-patch-id: 69a243221e4b2abfb93cdc8943e00f08dd40c653
prerequisite-patch-id: 51868f9d488b8ef968f543470f7d1b138500fc91
prerequisite-patch-id: bd746716cf97a444fb5b3895da616e27e25e7126
prerequisite-patch-id: ec68fd76bf8301f023ccd216d652782348f5456b
prerequisite-patch-id: 563bff08c817ce4c5916ba64bb54f7c9e0bba086
prerequisite-patch-id: 5cbe91a04cbcc60c81370b85bc451045283c9e75
prerequisite-patch-id: ce50b540de5ff8306eda71b26d99f73e8df9b562
prerequisite-patch-id: 8cbdce9446c3d4032f87e497bd4f0bcb437e78f7
prerequisite-patch-id: a8e3ba12317455d049b58f2c4b58144c3cd8cafc
prerequisite-patch-id: 3b531b647cc2e81feaf276778b12beab0188b9f3
prerequisite-patch-id: 9f690ff4667d111a61f5c746cf13762008b4e551
prerequisite-patch-id: 5501f3337875e8d06a621def31ce1a29a51c783f
prerequisite-patch-id: ebb351ecea2bda850f4cca785bb5517af415d8f0
prerequisite-patch-id: e25d9e87276982c2fa0c11c042258cdf896330d7
prerequisite-patch-id: 30aae7407ad01ef9d266f0a494ed82cace8cc899
prerequisite-patch-id: 2152ecae4fc538063a922e9cc94f1b9eeab81091
prerequisite-patch-id: 51d7f61d0b93716d33026abd1411ac609c427aa3
prerequisite-patch-id: 63013cf2b51a93095401773ed26fbb3ff6fbbc8c
prerequisite-patch-id: 76557a2c96407a1fa0d9b98feb7f06917b9dc894
prerequisite-patch-id: 4fdc3dfa7f691ea5698572697bd9c7d5aa0222a6
prerequisite-patch-id: fa2f15d29916cf33148c4cd10986626dfa4801d9
prerequisite-patch-id: 808702ad59e5b45f5ecbd824f4035aa2f42f9162
prerequisite-patch-id: 0a5a6fc1c74ce653f58b358ff5ee0f58ad464d28
prerequisite-patch-id: 4099233603fd4839c60527610802cc8615a0c372
prerequisite-patch-id: 27a56ba95f9d5383f6aa353c36947e0941d4577b
prerequisite-patch-id: 2938d76fb14424ecb896f3425ae628f6b0898131
prerequisite-patch-id: 78069fd4f4877aa96609f489826cf69f997eab0d
prerequisite-patch-id: 9ff674343ddcac8b636dc7deec2a34a73ef7896f
prerequisite-patch-id: 21f244a9e348480de1a866c7eb039e1a08a85864
prerequisite-patch-id: 65f1f7f7a2e62991f5f9092ac0fbae8bd35e6332
prerequisite-patch-id: b425385442d1b5d7107750729f017b3b7dacda10
prerequisite-patch-id: cfdb26e4646f5d3c4d51322cba2aad50a04b111c
prerequisite-patch-id: 9bc93cca841f1eae7a261ac009960b03bde5c562
prerequisite-patch-id: 3c46975f9a363c99d6ad0c778893932b983ab7fe
prerequisite-patch-id: a710edcf7b2e93114c51e08c9314a9afcdac0507
prerequisite-patch-id: 1479c658e3820ba6a51ddd018e8625c979af7548
prerequisite-patch-id: fb11f53e0fea4ce1335f24ccfd21690cf2d5f960
prerequisite-patch-id: aab8ab019102c04a77021c4f98c9605d6da3b6e6
prerequisite-patch-id: 9ebf3d0abdc69d4b314e6eee28e36c3d4e121090
prerequisite-patch-id: f08685cfd2565c52b1c93b13417831fbd11a5218
prerequisite-patch-id: fd4048d42d50e223df1d3adfbdecdab9e787424a
prerequisite-patch-id: 0abd8f1f17bd1b3314520349f3dc0f6bbc688301
prerequisite-patch-id: c63b42896a7839584c31e2bfce38efb1b62cdca0
prerequisite-patch-id: 0934842ac9fca3ce5eefdda010c77d6a93aafc99
prerequisite-patch-id: ceda4e1e5ca236fd80ae97d9647c4ec8cb2de676
prerequisite-patch-id: 6c343d8f05b08b72e9933aaf616978b0c0439766
prerequisite-patch-id: 50435f92f13a8b9d346924842c4b91a9044b86de
prerequisite-patch-id: 06386d3feff28d7d311be1bf61ed4e70bbdcb880
prerequisite-patch-id: 7b1f0216fee6118d8232051960be632e0bd69491
prerequisite-patch-id: da172fbe4c99913c60baecf46846f577b996ee62
prerequisite-patch-id: 8fa186718f21ceb4ebbeb5321b740e3220d0b7cb
prerequisite-patch-id: ac2b2248b0e8224d5a2db29a3280f185729550c7
prerequisite-patch-id: 9136d7b0f39a0ed5f363cd0514784b56dcc79e3f
prerequisite-patch-id: 9d8a4298259602a73db45a5ecd11b5db750a1199
prerequisite-patch-id: 1b2028a91635ce2bbf26e8df886cb1774986f6e8
prerequisite-patch-id: ef7e65436fd815ceb42ce79b8f8544e8043602a3
prerequisite-patch-id: 7f4f4d236df2b5a334ed4a584edf7a97bee5c267
prerequisite-patch-id: aca30a4c1ee661be67a14c9bb922158ec4a5cb3a
prerequisite-patch-id: a34bf25bb384b721ab040fc21e15cc196623ef69
prerequisite-patch-id: 1203c79be82a7ecfe2b4657b9c6bc08332998b14
prerequisite-patch-id: 7879da1b4b9341709b6dfb3f582260edc463ccc4
prerequisite-patch-id: a1eb484e613ef514e36cdaa7ed8737e9522a6807
prerequisite-patch-id: 4f426d02c425fe730ecaeff91982343cfb36f484
prerequisite-patch-id: 15e958b50dc87426f3c2ba728ff2928145aabb9d
prerequisite-patch-id: db06a979f54d80f2db70ad7595ebde88d1840d06
prerequisite-patch-id: 8179a3cebdbcb7796e0b6a677f701e2db523dc1f
prerequisite-patch-id: b209d4b9c5d5d87c4cc8edb0e01ef9ad5008d200
prerequisite-patch-id: baf5dee69673e2627302fbe6d029c3638c6c2564
prerequisite-patch-id: 01a6ad5e57833fea061d6396ace522de2c6533da
prerequisite-patch-id: eb73ff1265fc4fac19d2968854387b56e395e06b
prerequisite-patch-id: c9ac80cd188d250540a2840966970fe6f385a14e
prerequisite-patch-id: fbf2e2e687ecd372da49b7d3dbfdb17e8c8ba378
prerequisite-patch-id: 5b547682d367e18ba35a2f4c1aebfd0c8c6b886f
prerequisite-patch-id: 436ed4ae2d88c0ff6888247adb1128f314362503
prerequisite-patch-id: 996d8549f1b93cd456e66d3cc214d8d7f9e0e619
prerequisite-patch-id: 70165c507e377a30f65fa6b3a5af8d8620500456
prerequisite-patch-id: 2b7271a170a787c22bdd955dac857e1982b5e8e4
prerequisite-patch-id: 49d2b9be35c4fcebe7187018f40db61a1c463dd2
prerequisite-patch-id: 00fc5984695a1958d65350204a19275fa52c652b
prerequisite-patch-id: 31d81ac953926479f7f12a7a03e39ee959d0c8fd
prerequisite-patch-id: 9acbc419ddbf0edf4ca34af406aacafd7c66fffb
prerequisite-patch-id: 77d547e2e325a3167014182311be317ff8b9280a
prerequisite-patch-id: bbff16cf7ed1104c357a250b30eaa422a01d7a2c
prerequisite-patch-id: 353d215af1e7eb9e2f81ceb50f4ce7f0ac829ea2
prerequisite-patch-id: 215eccc83cc450f91ad3248806867096669986a2
prerequisite-patch-id: 1c5319e7b632cb2c024a764c85a6284cfc78990f
prerequisite-patch-id: e65b01b8c4249d256f10e3ad699465cbab3642d4
prerequisite-patch-id: 0eb8debd71d5210f52e2131c9f4644b755f416d0
prerequisite-patch-id: bcb539eb9794689785942333eefa47c45461edcd
prerequisite-patch-id: 43daa6dba9af32af6f2db8f8825cc1addbbc9887
prerequisite-patch-id: e25e10a40ca2cea3fa9218e9a5623cfad565c6d7
prerequisite-patch-id: 693faab9dd12c074307ef984269172d846cf39fe
prerequisite-patch-id: f1972aaba9a24b49cee716fca2572543f7d3afe1
prerequisite-patch-id: 1148a5920da8d7e845a08dd20cde7e3d7cca7bba
prerequisite-patch-id: f254e307abed69bbce53f7ade5387935ae4edb87
prerequisite-patch-id: 61fb5c01525467b31cd5b305d580a04bae27b3fc
prerequisite-patch-id: e6e5919f0e551d639062aa6c2371d8ead1b8d870
prerequisite-patch-id: 0794151d997f26cb009677a2df9553ec943ba8ec
prerequisite-patch-id: 2b701d4588d9aa7489372b94cb8edd039d606774
prerequisite-patch-id: 12995af768a8b74e08c570fcf8b065f2677e7f68
prerequisite-patch-id: dd41184474ec368611392bf3dd81e69d67c2e74b
prerequisite-patch-id: 9939aceda398d10cbe794dbcd1a7a2d916115152
prerequisite-patch-id: 6fac7a7d82b5455611f4a1a209f41ffe23e2b437
prerequisite-patch-id: bf9319381427052aed9e87724b8da246511edcb3
prerequisite-patch-id: 5072d177ea8866ea27e596ebcc963be235200601
prerequisite-patch-id: cd08c406ecc49874ce6d05c64ca6fbbf1ae6c4ef
prerequisite-patch-id: 77333d21a5a7a648d93849ad13b7612db11272b0
prerequisite-patch-id: 90c67e8835c7b21d076f94c767c620c5d4168f7a
prerequisite-patch-id: 4543066b953fdd2f7ac958a372939b3eb2471c3d
prerequisite-patch-id: c6787257df3d4715574d1c4bcb570e58668d0d31
prerequisite-patch-id: 146f3037f6bee899dc5c5c8c72f4b9c264b62f89
prerequisite-patch-id: 6331f02c6b63eaa02909e647961fb4b2897ced87
prerequisite-patch-id: 275514b8eb7aaf2aaa4ec130b884428a32e24d73
prerequisite-patch-id: 09b5ee4de1c45c3c08f6cba3555173c5fc2ec281
prerequisite-patch-id: 56f3f414db04c80c7b2713f7f5acba9a6a45d34e
prerequisite-patch-id: ebf8168e8e9308f0fa15a055b567cb0afa7f07b9
prerequisite-patch-id: 81637957e5bb8a9f6d28f7a944675374d0eb5a65
prerequisite-patch-id: 8f895ae6329b7e8b0493249ddb1f1ca0440338a6
prerequisite-patch-id: 0bd6790ede0b1ede2a8b228c260918513b7a4bfb
prerequisite-patch-id: 56eb9c2eb39c0f06d2ad63b0b13e3fe7dafe0f84
prerequisite-patch-id: cad34cf3fce63ad6d0014176c16f9b82cad14d94
prerequisite-patch-id: 6d024772811958f366d4d48942925e1ac2050837
prerequisite-patch-id: ab89cdcb8bacfbdc78308d3563dc2c05636c06d0
prerequisite-patch-id: 9d96e3d25dfa812bb5ce91cf4f87267764024cb4
prerequisite-patch-id: 978ad970cd530f2aa643a1e2d814e0bc0d46e015
prerequisite-patch-id: e63a2e2d72b10aadfcb0514dda77467c0dcab67d
prerequisite-patch-id: f23152a7a9603413912e2138ce082b0b8bbece57
prerequisite-patch-id: fdcbf9272b0a8165a317d105e9f0544d5f62c21b
prerequisite-patch-id: 559465728f9dc26650e49bc53ec4640b11545cf2
prerequisite-patch-id: d8b5cc0c188628ca4edc665b846c42ff02abb761
prerequisite-patch-id: 5f0a6d65bb83aaaac946371cd06cce1d3751f4d2
prerequisite-patch-id: 45c085d46ce63446ae6447eefc9a98d147b22036
prerequisite-patch-id: 4f3da3794127ade20f0f327f3d8bd94e9eb2e8fa
prerequisite-patch-id: 489ee665f5cd76ba6459dee9f3b1cf935544e66d
prerequisite-patch-id: a310c63562d15311ca23e2faae173b46037a469a
prerequisite-patch-id: 47aeb16b5b24e8c806ab592465eb0c00e52bd7c6
prerequisite-patch-id: f94c3ce14b2e9a5dea429fc20ea484244fafc607
prerequisite-patch-id: f1ce5baa43d831e0e87bce41545e990905d8971d
prerequisite-patch-id: d52734922a736c688d56dbfef2496c17a6816691
prerequisite-patch-id: bc36072223ccce8f802c82da9bb0b06453618d9d
prerequisite-patch-id: cd57ac954110a968e7d423f1ab64fe43d26f6617
prerequisite-patch-id: 48a4042500869c348361638d7d9b471afc2388e4
prerequisite-patch-id: 4ee6af1d092acaaa622be0022ef163de517d91ce
prerequisite-patch-id: d64e43d0c3c095ddb515afc8a768757da063cc1b
prerequisite-patch-id: 6fa749b36eb5cbd1a3faf6961867baf6c4aeea05
prerequisite-patch-id: 94a5333f8db9195f725d4c89f7589b7cdc3cc847
prerequisite-patch-id: e5bd8924ebe75fe8e45d4b74910d3325562dc8c7
prerequisite-patch-id: 84229b78b6c4cfaecff5993ae3143f51b948eda5
prerequisite-patch-id: 9ec520d21154e280cb0db754ccbacf9f6b9f054e
prerequisite-patch-id: 80d773a9e45c11f8503520c533550bd88a58c9b0
prerequisite-patch-id: 73ccc326e556847dabdc3c56549fa79c7243f771
prerequisite-patch-id: 743eaaec1d34234f92379b0d9c40dec2e7be3cdb
prerequisite-patch-id: 51eb8b2a5c2eaf8c18e8d0ac82a6f388047c8a43
prerequisite-patch-id: c8ac8eea909752db5dd3c307a23c9dfdf0db3d1d
prerequisite-patch-id: fca0c86f4c08c4e0e895ae09abb481f8f1358bfa
prerequisite-patch-id: 1f7efc28e25fc65e91230398c7b7517018995243
prerequisite-patch-id: 04d87d7df15bc3487849e0da5a7ab816cf97224c
prerequisite-patch-id: bcd10b9d1b765e312f186c36d2ad4e06aa068031
prerequisite-patch-id: a0e6d533a97f4f7f474438decd65844723a32833
prerequisite-patch-id: 011cb01938529e478f9d32b5d5906593474defef
prerequisite-patch-id: 8d548b5374264fac9327b13f26fdd44838e0edab
prerequisite-patch-id: 54bc03f4a7fd2092775569a5108b5e1c83a221c0
prerequisite-patch-id: 07f055566c3e2846a57b28fbbb5201c53b0d003b
prerequisite-patch-id: bd48afa70647e92db0e44335fbe75d2b520671a6
prerequisite-patch-id: c84ea81cbfacb6e7919fbe5e4adf347c58d3d5e2
prerequisite-patch-id: 68a129320eb0cf825e8155e9c4cfc7b9771b74fd
prerequisite-patch-id: 24a56b49a61dac3b2bbfe51fa7117528c2df56ec
prerequisite-patch-id: 643a6de2b6f54fb91a5b7b63c6faa8fa068be048
prerequisite-patch-id: 3aa64e4b575af60554efc32ec0e33e4b06d31704
prerequisite-patch-id: 94d94544d6faab71f0826b171021423f6b6e0f99
prerequisite-patch-id: ad1cbe0cf78638498fad0b74063287a8e84cbf42
prerequisite-patch-id: 1f2d7913fb39bdc27e12de11c09468a3f2b1ec0e
prerequisite-patch-id: 010fad0029b033ccebd662113ecfc9eb43e11126
prerequisite-patch-id: 18752c0344ce4fde8d1800779c0346c3afaf0727
prerequisite-patch-id: 9cfd198554aba0c174ecc984d5dcdc465e7e220f
prerequisite-patch-id: 529a6884201e1979b43de4009371f462701a8692
prerequisite-patch-id: d622d178cabb2315b62332f19bfbae5a6ca1691d
prerequisite-patch-id: 79dc2e9da14a3ee99239727df05a705bfc70d60f
prerequisite-patch-id: a5bd6dd22575ab7127190af3157314e98059a32a
prerequisite-patch-id: 78053d69566a1f96dee61808ccd4a56acb7606f1
prerequisite-patch-id: 0358acf9ca434004673f11143f8117f0a4e85bdc
prerequisite-patch-id: 738b14f1d93fc70e5c7187cf2a7f23d9c4874c53
prerequisite-patch-id: 02e2409f47bac11a565472e9d3f706b6803d9bb4
prerequisite-patch-id: d03642e598062b5572e123360499b1528de6f23a
prerequisite-patch-id: 189ba78368264f607a10cf9be6d08beaa7f84f27
prerequisite-patch-id: bc3e478057ee80afa1c0b6ac9d177cf14abb4d2f
prerequisite-patch-id: 82cfbfb73d78b6b392e79b0604c282177b42d574
prerequisite-patch-id: 5ed842981a6966964f0f4401576e7bfa120a1f17
prerequisite-patch-id: b8642e1e9431a89c8508a17b2127d6c8120e4bb6
prerequisite-patch-id: 3c599daac30c79e8f152b532f2f2088263b49f26
prerequisite-patch-id: d9b93020f21448cce923b14a461d0b1d7ab7888c
prerequisite-patch-id: 89a16eee9dcb3d392c2d5a6d2f19291636a16251
prerequisite-patch-id: 8b50fae25915c738a06633d4558b54368c25ec78
prerequisite-patch-id: 23ebcd43384cbdd9b7e2f80b209ce038689d9179
prerequisite-patch-id: d44e1b690b0c504d6291c450564705d501a9c9a0
prerequisite-patch-id: 88dae06d118b43ffe86e07e30a06623d277c3b5d
prerequisite-patch-id: f5455afc49a714210ac1d14ab4031fefa792859d
prerequisite-patch-id: 86be35ae1f0d8ac1b256286ca60762251ef76b16
prerequisite-patch-id: f5f606a0a148dddaf4de841ff387c540170d9392
prerequisite-patch-id: 2d96c7c393c6c7acb6a74962e46d2c31cd26cf23
prerequisite-patch-id: e3793826ccbf79d847d21cbe51d172ea43cbb732
prerequisite-patch-id: 0dec5631a4ee1d85a50ee4ab70c61736b1464597
prerequisite-patch-id: 1cfad73777d23b95c93c3479917dab607221f122
prerequisite-patch-id: 535a068b180a4fe38f266b21b3b1989c918a9c1c
prerequisite-patch-id: c9462e9b147d39a473bc08835757331e24a08d26
prerequisite-patch-id: 3aebcc860a65b43323f44c878b747da57c7c17e0
prerequisite-patch-id: f777ac4d80b81bf1a5184dea1792700e7b6d400a
prerequisite-patch-id: 06c629c193494ea5f40176c23897519636bda83c
prerequisite-patch-id: 73e774c8ee868b5679e5ed20f4821e098c2f7ef5
prerequisite-patch-id: b263c80975c7ac3268d03ca82385aca5ab81d21f
prerequisite-patch-id: 5e53ccc36eb9613e6413ff70536a4d87d0c63bcf
prerequisite-patch-id: eff38dde8c050836edcea68cbaded142b0ecd755
prerequisite-patch-id: 03867f726aba4a50b514525546aaa10f175a6b09
prerequisite-patch-id: 13abde9e6b7bea2245f30406defd78579e4c3631
prerequisite-patch-id: 0f23a24bccdfe4eae20939f3503410f7ccb092bc
prerequisite-patch-id: 175d64c3546111c324e7b1a5a5f8836ee4339196
prerequisite-patch-id: 467c5a76a7137530bfdacf54e755c74adff45688
prerequisite-patch-id: e63664dea16b4867deb827a342269b488b34a4c0
prerequisite-patch-id: b0cc6b643b3f5b0c3ed06eba1ac0cad0c5dc567e
prerequisite-patch-id: 367631d8587b0bd3e18de6476352e1b0fb8c4e35
prerequisite-patch-id: d18e843a7768950145ade29ed6862daab8b02376
prerequisite-patch-id: 2d99d30339fcb888e7c5646b414cf029f214c16d
prerequisite-patch-id: 3863e416e747a30ba9d1b01236a89949bf57d500
prerequisite-patch-id: 722516a3515aa8dcbfc71889df4c05aa04612aa3
prerequisite-patch-id: 80b656c65f0f876ebf9b677ae3d6b6da5e9fc7bb
prerequisite-patch-id: f0db056ff34c6460236edc46c2103f54ce5270fb
prerequisite-patch-id: 84cf0a029c8b3c5fd57208e8b7f679e885480d2a
prerequisite-patch-id: 191fd2a8e2dc9671ecd37772ff52e0772f81f483
prerequisite-patch-id: fab18bf5e3e4c6c01426ae56c291b3bea0bc028e
prerequisite-patch-id: a27200b20043867abfe3e959ba3065b9a0cc770f
prerequisite-patch-id: 72bddb23bddcd5f913b0f0800e76257b5ca5f530
prerequisite-patch-id: cf244dc38506374b346b9cb9cb583f218ad657c5
prerequisite-patch-id: 7e8b08ce6d437829d5e7abc1f3d87224f10bf62e
prerequisite-patch-id: d6177b5127c7651d594bf016c3f54e358b7f7a3c
prerequisite-patch-id: 60a27a4ef7f4a251bda1952920687cc2cb0c93b5
prerequisite-patch-id: 88b9dc1b272d61eedb8492e98a2f4d03bc3d9603
prerequisite-patch-id: 04a92e38174538e30289a70a3e87b34e5991544f
prerequisite-patch-id: 172b97ef84fbf0768f8585ad9d3744badb61c07e
prerequisite-patch-id: a651bd56c8bf6df232ca23a5c9b65d98f4964a03
prerequisite-patch-id: e1a69c1970039f33814eb81b0d026f3aacd5a962
prerequisite-patch-id: 138ee059afc9d12d16dd88accb9b987c9b8b5fb0
prerequisite-patch-id: e9b6d3047758f6c98e7731f481d66ed00422cb73
prerequisite-patch-id: 25474bcdfb32cff80393d38fefe864d1d373fcc3
prerequisite-patch-id: c0b8ddb7b860e971d07311e90f8430ea7049fa06
prerequisite-patch-id: f83f7cd729b15bdf1b366bf3c52b1c1cf86c467c
prerequisite-patch-id: eb84daec9c5f4b566c66c6b405ce407ed61a967b
prerequisite-patch-id: 347f7cb6cc3618a83d337a9b11a1ab49c7e84ecd
prerequisite-patch-id: e5704756fd0cc9df2f15773c54fa4ecce8734e17
prerequisite-patch-id: 1e26f69bab6c60cab18527ea47cc3d9e1e427150
prerequisite-patch-id: bc8f18359d849d75c728e81f578c29374b133cc6
prerequisite-patch-id: f842dc8d5467035d44c6deecb6685ac9f164c314
prerequisite-patch-id: 07856cc897efea1831a4856fffed67a9ca02f5aa
prerequisite-patch-id: b4811dc1b2334a4ea7d4eb72de3c39086dc8a6b0
prerequisite-patch-id: 20ab777cbb16da87dbd54f7b9fcda452081ef5e0
prerequisite-patch-id: c472f46fb2ad13e0529fc8b476f29da23f4474c2
prerequisite-patch-id: e9f7a7a02a9b14972839387e7d522fe51a8fb61b
prerequisite-patch-id: 3d2a6ce5e866a105a87d2f9f789dc635b0fb57f9
prerequisite-patch-id: f96d3dd28663fd688826d63345404b8c9ef53c68
prerequisite-patch-id: 1c22f8f1e8719a2c07f2d55c66ec6d857168e872
prerequisite-patch-id: fb455a89ae26cc7550c8f6fd4450855ec2e82e47
prerequisite-patch-id: ea7ce1c7022e6860d3b3faf619174db6196b3293
prerequisite-patch-id: 6aa5593c84b1fd8140fb8df8c7f98a6970658af2
prerequisite-patch-id: 8577b535636708f07fde397cb1b4d120bf128a12
prerequisite-patch-id: 32be96d68b911beead0f932d02bb2f0dc9299fe4
prerequisite-patch-id: ef3e53fc2e478c4a1efec4dc968eb860d1a45bcf
prerequisite-patch-id: f80a77612e8698d0c73f9d0a017cbd909eb531fc
prerequisite-patch-id: d2df6629483f4951dc2685a995e75559d24ecd4a
prerequisite-patch-id: 5bb309bd75960f94cbec396c13a19ec92e5b5bb0
prerequisite-patch-id: 6dcee462867b6467a0234ad329f7143df8f4af0f
prerequisite-patch-id: 0f223f6b12ae4f212b65a349e6a51dfd82db5876
prerequisite-patch-id: c63c5c04b080add320e0b33bf6dd2c53e1bce5e4
prerequisite-patch-id: 5c3cd65f1913ba3d56e93a71aff6df8c06c6f701
prerequisite-patch-id: f053c53bc6fbae9f2b8a78d77d3c73d3b8cff62f
prerequisite-patch-id: 6a0c5f153e0bb28c22bb07336d86b62b8f3e1b91
prerequisite-patch-id: efbba5ed979a42249f7d5112f86961328a8264be
prerequisite-patch-id: 44f49cea491e75bf3f8554c5a26b465c0413c78d
prerequisite-patch-id: 17d726bfe8e7189e2839efd332b1c6da103c16e1
prerequisite-patch-id: 6f34f3ad4c775c3673297b9283f72a19c0fe6995
prerequisite-patch-id: cc0248ec77cb43a372202aeedfbe5edde58cf49c
prerequisite-patch-id: 9fb449c66241b3a2ec9ff9830ad3bd74d8fe7f4c
prerequisite-patch-id: 6087fbfdb9e9d8b4ef4f728d9366d3899bd91883
prerequisite-patch-id: 37f3e586fb4800bc4e94f6edba202439c0cb374a
prerequisite-patch-id: 9c20fe7277fed078f0a9899969c63aa476c28e9b
prerequisite-patch-id: 6c16bd34775a287dff7f58b66efcf232f06920b8
prerequisite-patch-id: ac5a819c942b8283a6282770e32a546b347bfb25
prerequisite-patch-id: 8f07017b50ebc4802b8265c9775ecd1577edab3d
prerequisite-patch-id: f8f6a6c7b37d9c8ff9d7f9a24c96332046c9f7fa
prerequisite-patch-id: 82a4daec006ba8512a3f1c05dee95dd891241883
prerequisite-patch-id: 273eb243f40d3ad82a22fe7c48d0fe975beedb27
prerequisite-patch-id: 8fdfc9a357f95c2e9fc37d42eb292f727ffe2566
prerequisite-patch-id: cf4935304501c175e8970b301ba8bf3dcf22f038
prerequisite-patch-id: 8312d0b74cf0857d6ce0883b6d3623a2cd75f9d8
prerequisite-patch-id: 593a13a7298c8752ba76d3589549dcab843a9b57
prerequisite-patch-id: ace74f1a37a2c0c6ba9e0a7d0a5ad42dd391bea9
prerequisite-patch-id: a88275f6a65addd15836b4f6d0d814a3158d4013
prerequisite-patch-id: 5dfb668584162d1f245a67742c942025abb24bf8
prerequisite-patch-id: 570e82b03c23e749bc69c261e6d1d7e326854611
prerequisite-patch-id: 27d7443cda9b3b5c376a0ef3f6d6de9649546a3c
prerequisite-patch-id: 2cac2e77aeef8b36d6c0f0089dc263b042c3c5a1
prerequisite-patch-id: 2c650d5c10a88be4ca6ff4d3184890c8f8768bc7
prerequisite-patch-id: 9bf46050b9326a926c99f91c5e610de5c545f0e0
prerequisite-patch-id: 8ecc596fd9fc53a533ec5cc6131493600807525d
prerequisite-patch-id: 0af8e732ce094504640e5940bfacba5152dc7945
prerequisite-patch-id: d4a81ab6537bf67b4d662c698ac9eec7dadd6e3a
prerequisite-patch-id: 052d0c45135baa674e9bc3c8f66f76f0d84f0b9d
prerequisite-patch-id: 17bb623e238c67d15736f62580435c9de74fd892
prerequisite-patch-id: 2e7fd6ca8dcc4883667004969e7a547cff93fae5
prerequisite-patch-id: 8c8f2a71739279362d09192d66f9457e99efadb9
prerequisite-patch-id: 115e87d8981359ce3c352023ecd7e1354dc05b6c
prerequisite-patch-id: 6add58e406c6aad98a143e48f3862f51f222e292
prerequisite-patch-id: d0579734fc73f9e5cede73f0ccabaed1cb97a175
prerequisite-patch-id: 57bba2f1f988d3a1d5886f1a237e8eb7f8d1f66a
prerequisite-patch-id: e7e970872a6d757afc04b2c0ad53d33f6a2c3a86
prerequisite-patch-id: 59ceb1d09a064893770d3b6bf55bfc806471e74f
prerequisite-patch-id: 07f36476457bedc5749bd4b097451054fb1f57af
prerequisite-patch-id: 31d11034b1166ab1068f009c6f8075ee14a723bb
prerequisite-patch-id: dfa5737a12d8231869142bdd84b915b7bc47b12c
prerequisite-patch-id: d8e0baffa4e4dbbcbc72eb1b56d7b068f37bf663
prerequisite-patch-id: 268de28c6579c12e183981936b653c1e38abc2e2
prerequisite-patch-id: 023545a27742767def8d5e0f960a6b6529e45b49
prerequisite-patch-id: 8b9adb8af4aece161a3bfc00aff169864238979d
prerequisite-patch-id: 775f6b887609496238a81420ac147e52b96070a4
prerequisite-patch-id: 4c43b14ba969169fb012cf1e6f4fb5d9cd74a77e
prerequisite-patch-id: 2c5c9ab369acfb263ad32e6ec136a72ee18f832c
prerequisite-patch-id: 473c9c98f25ebe5cc8a7d59127a90643585d3b4d
prerequisite-patch-id: 7104f04ab4ed1dade5b5334a7eece9accaecd88b
prerequisite-patch-id: 7c45db83263d8cfa31eae3552cd3dcee7a53f912
prerequisite-patch-id: 75371a46df239fd5c2428186a7ca3bbad4fb1672
prerequisite-patch-id: 596e4f252886a75b5923efec2d332481682a2ca1
prerequisite-patch-id: c0db3665962168ce47e7782b3d18c434332eb63a
prerequisite-patch-id: bec5e33e49d97421984828b095b1178255727072
prerequisite-patch-id: ad7eef93ecd3f81794d7fb33cd3c44095410d492
prerequisite-patch-id: 155faf49abef9e8842d473b269eb1906e120dfe0
prerequisite-patch-id: 1a52fbc71c72794e7906ca587eab605bca0138fa
prerequisite-patch-id: ca0c6373ed15d33f4aabcebbd643732b69ac2176
prerequisite-patch-id: 2c34121c34846edf207bd60a9a25d2d7a71204b2
prerequisite-patch-id: 21a1b118c244e9d780fffbd8e113fa67d949f67e
prerequisite-patch-id: 723e2f49a364fba431c50341fe5a45582a0c6b95
prerequisite-patch-id: 2a345b1819e2844dd9784f5eaf6b9d70564f2015
prerequisite-patch-id: eb3f0a441f30fd6f8718b43206a74cc4438df5c0
prerequisite-patch-id: aba1b485cb584601daff6ca5f3d08af2966ff6ed
prerequisite-patch-id: 24010c40d262c316e39170d4d7840060341010b4
prerequisite-patch-id: f769b1c743f9a3d72360a2930d17c0b52a968cd6
prerequisite-patch-id: 61403e9489024119283d00a84dd962416d5b2817
prerequisite-patch-id: 87078f8a7edc510b20e1fa157a15c761ef8b0e02
prerequisite-patch-id: 2484f316f5a2bc59dfe3e89993bcae53c423cf9d
prerequisite-patch-id: c0737ec472bb3e16214b97750b1b5727a09f3414
prerequisite-patch-id: a099b4d4d644c19c381709973d2dd97a7258ab74
prerequisite-patch-id: bb1843ab355fcea65ba626f4a23fbc38b4c521d7
prerequisite-patch-id: 96864706a016819deb91cdcdf78b0541bdbe9318
prerequisite-patch-id: 7ef663d643761ea44faccdc1fb08c6182566de58
prerequisite-patch-id: f4148f065b578faeac801a1ea249971cd605554c
prerequisite-patch-id: 88b8151bde01ee84b8d72f15f76220671aace84e
prerequisite-patch-id: 15bfe82672520cdfff534bbbd0a3a299a0972f32
prerequisite-patch-id: af616cf255c3578bd69056b7e525b54699388621
prerequisite-patch-id: db67d7fa0389a47c69f049e9e04b645ec69a390d
prerequisite-patch-id: e9eb700139157b442338ca7439412c0027d96f46
prerequisite-patch-id: ed8ee4b4da9b07f5c33257b901fa8423099dd68b
prerequisite-patch-id: 7a0d593c8f137bda28efd38268c613bcdc2c70a7
prerequisite-patch-id: b51b76d9aa446a1cd842ee755a2d37dd5569e4b1
prerequisite-patch-id: c6d8d66af1b30d327e5eb8d7f6c31608a7612287
prerequisite-patch-id: 5c016435a7e6edc96b867268e952bae2c5903c4f
prerequisite-patch-id: 5545f2e8187fccdabad69a5b921c6f1c4efb1a00
prerequisite-patch-id: 9b4878bfacbc7b245c5c43f89678020674a1edc9
prerequisite-patch-id: 8f825ab67ad190a0e206762abed7cd4a3edf17f5
prerequisite-patch-id: 6a083564b6576e2b7ccc9f36ed1a82e6c992684d
prerequisite-patch-id: cd1c8327c812bed4e7fe0937ce0b4956e8cc2ce9
prerequisite-patch-id: 11c48f2fccdf2d0fc3143d1bb5a642c386f5df15
prerequisite-patch-id: dea9ff77364ab62b89abdef3638198bcb5813b9e
prerequisite-patch-id: 1a80f7ddbfbbc720724028fcc85f498f2468eeec
prerequisite-patch-id: fc4794a6758fb0ceba184c4f79d49d5c57d6814c
prerequisite-patch-id: 340311bbef3656384ddeaa381dac23bbe54bccd4
prerequisite-patch-id: 4eb00e7ea6ffa12679b6a9d31b409eb243e2f4f5
prerequisite-patch-id: 795831b71dd7e3d716465d5d91764276a58c12cc
prerequisite-patch-id: 570891e2f0ee4817dacd4a57249d9c3d3e875276
prerequisite-patch-id: 62cd8873fd9622aeab1bfc6c1f6c4da8e6a74146
prerequisite-patch-id: b499a068bcdc32ff0ad3e36eaa4f63a9ff8825dc
prerequisite-patch-id: bb7b06a3532ac54e9642344fa8a465a0f3c19098
prerequisite-patch-id: 5d2fbb520d6c08dcfc1c02ca39586a971ff5eab3
prerequisite-patch-id: 8a411a2a4b739ea746bbaf88f39f52cb8844a5ce
prerequisite-patch-id: a5583e9159239f07ac333616337aff5eda7752d5
prerequisite-patch-id: e6c4ccf6b778ab8acbec7cfe575f238254500131
prerequisite-patch-id: 08b852c4a878b75eb3802459e6a339910058812a
prerequisite-patch-id: d9f676cf2ebcfffe662d98c4a2d7ce81ff3b5ae5
prerequisite-patch-id: 5808d7f9dedba29bbbe49eaf53b1003bca691cfb
prerequisite-patch-id: 5542821669fdd80bc69bce687a2953b05d28ba06
prerequisite-patch-id: 45c371ac48551febf2c32fd3aba58ac1990e8e13
prerequisite-patch-id: 8ffea4d79311e2485b3edd7dc077fdfd0f2fc81d
prerequisite-patch-id: f17fe39cdbeb229a6eefebfdc4983441e3e68487
prerequisite-patch-id: 6549cefbca38fad7d5325f1cb2aeabed000ef11d
prerequisite-patch-id: d61967f37dcde72d26d766348afb7a43dff96cba
prerequisite-patch-id: edf8b40641534901486d512dbddb329d80f19496
prerequisite-patch-id: ef358bcca8404ca56dc29d1fa326e8805c5fd42e
prerequisite-patch-id: 126e3d74c2912e56577a5c31c965e57d995d6b5a
prerequisite-patch-id: fa9aac7196dc76ec7cb1ed889be9352e7f58a27c
prerequisite-patch-id: f4b7e4e007ed062ea3bbd9177b10a337517bace1
prerequisite-patch-id: fc2d4e14181682abcb6ba325dbffdcc6dd68ef1c
prerequisite-patch-id: df49508211ee5da16a388f5f4d92a6233410b635
prerequisite-patch-id: 487f2d25f23d419b32f340030c178630e2adaf63
prerequisite-patch-id: 3a6452688b57851ab82e7237a15dc113f14a3b3b
prerequisite-patch-id: 1608ed100f41497ebbfce1ad0bfa8ea31f2fd6dc
prerequisite-patch-id: bb2129b9404626fa73f7d070231ef0c4119b0270
prerequisite-patch-id: bd0c6d4be77c85fe00f5ed66522a0f607315b8b2
prerequisite-patch-id: 59d2ec8c66cfd0961b6290748efe9c57c468262f
prerequisite-patch-id: 780270ba17303e3fb09d0b1bbc678dba2439365b
prerequisite-patch-id: b187de33361e3f0ac2d6fa51058e7c244dcc5f7e
prerequisite-patch-id: a78b18c6aded04c62f1f9097f9fa2a274fd21286
prerequisite-patch-id: 05222ec30e195b726f784933ed20880f74fd423c
prerequisite-patch-id: 212713b120a7e52d3a7c18a1798f1121320ce77f
prerequisite-patch-id: 7325d39b2970e38c16cbc2800b8f3b84f3eafe16
prerequisite-patch-id: 582e5d1f3858ec14defb63fd9b13c4229d2eba80
prerequisite-patch-id: 9bebe85fa3d2b59c5b40acf45624dff385d29ceb
prerequisite-patch-id: e0da01a294eff2b459e388f4f00c1cf6f55c300e
prerequisite-patch-id: a4d2480b5d664da5c3e8144460f41ed9abec205b
prerequisite-patch-id: 3899137000766c3977dda85a6bf1b2f4afcaf3cd
prerequisite-patch-id: 01178ec35c5dbc662600b99b8a16401401edd662
prerequisite-patch-id: ae55dadb3d464ca9ed24c237b0129530c1cb6ded
prerequisite-patch-id: 1f346e98d53ec008279a06448b969a74e099bb6f
prerequisite-patch-id: 0e4de22df3783485ad1d8d2560d14246ef99b2a1
prerequisite-patch-id: ab4eb3140b65bde3fe01370adf76ebc474a17f84
prerequisite-patch-id: 61a580aaccf1462d58d1568d4a20556b54014e01
prerequisite-patch-id: 8f3875546e2cd3381dab9c07a37aa17a8b63985c
prerequisite-patch-id: c2da47ff7f88ba3a58c41310f1b333dac9dd5c37
prerequisite-patch-id: f4b5e37c2e08790ff4cdbabd0e1e1d4bdc94bab2
prerequisite-patch-id: 5a4c25ebeffa20b7f20dbc0e969f853d1be035e5
prerequisite-patch-id: 7501ba25d8e0631245fad6969765848571f72e04
prerequisite-patch-id: b74b926a0887edf1e2027ba75b0937c3d1211bb8
prerequisite-patch-id: 9ee951e29a405d3407d46779f96c38dee5a8c9e7
prerequisite-patch-id: 1aa699aa8e99a554b6679b59a58ba71067daf5f9
prerequisite-patch-id: 9d3317d8dfe00a943dcb5b8a11125c7e282deacf
prerequisite-patch-id: 24fa9d9f1e8dbab8f751960309291111b909d5c0
prerequisite-patch-id: 5a5046251f76b85fd82e0f2ea25d98bab88aadde
prerequisite-patch-id: 96b6c45ed44ec2dc86cdac00760f4e92f2748ee6
prerequisite-patch-id: a1f8caa00ad1b6f75b6f982988f5b3b25ec3fe31
prerequisite-patch-id: 91e1b4422bc3bde6e316f8b41071636011bf052a
prerequisite-patch-id: 623c59c5e3eabebbc8fc450c7d1b7d1172e9dfd9
prerequisite-patch-id: 9d9b28c0b65e6e23916c07310f16990e1be7efed
prerequisite-patch-id: d437a5a059a89bd13c994481c094964ad210cc0b
prerequisite-patch-id: 9f2a9b693f75c6be0cd5506d5671b6e58c73d1f8
prerequisite-patch-id: e00476b81d63144006ed05d805bf7943654e4b4c
prerequisite-patch-id: 15ee6911732d65fff94adc3e675ac38cdd7bbd14
prerequisite-patch-id: 9420591f04791096ac2303e86adeadc75bc6cbc2
prerequisite-patch-id: ab3698f9ffaf26f064544ab934c83bb381836bd3
prerequisite-patch-id: 32f13d01415d23e27175200302ad28b591408917
prerequisite-patch-id: 95959bdbf0650541f3303fbc13d90653e919696e
prerequisite-patch-id: 463ee3498708335f3dfdb6cb35edbc08662c8c68
prerequisite-patch-id: 406f6486c07aa9138583a46d608cd85c1646d2f8
prerequisite-patch-id: 8e5fb9eb2a7b0b03cb71dd190d0b57af368c7879
prerequisite-patch-id: 6a7f1bb9c1f88d541276eef1b304e539849b1998
prerequisite-patch-id: 9b9eabc49c5a29b701259196381a5c0c9ac49507
prerequisite-patch-id: 2f87846d5fee8905498979aafe96b0afd145418f
prerequisite-patch-id: 86f0563c97939cfc2c27eb34c231d4c76bb94b64
prerequisite-patch-id: 43a4f85e77b5bb34ef68742829ceb77644af2e69
prerequisite-patch-id: 6fa5e07a27a4e26ed5f3122cef0a1f25e04ed260
prerequisite-patch-id: cb28b2be827ed963c2b42447bbe7265ed72f73c9
prerequisite-patch-id: 799445eb114e54cb9ed025ba24c86d3702f79c97
prerequisite-patch-id: 238504b348d8e5b419b3ebfc7ea90a1bb6a7a3db
prerequisite-patch-id: 6d66272befa4d7e8cc71e8be2bb40b9d2b4af2ff
prerequisite-patch-id: a3d2b3af4d53d7e4742a1cf95ee3932a3c4007cc
prerequisite-patch-id: 06c2088a28327df46d14a61d1f7b0d78d9d7334e
prerequisite-patch-id: 44e0d734af631a3fcb7f793e9efab35c1f3b5a00
prerequisite-patch-id: d8d82947700fdad97e08742da608fe215f3ace72
prerequisite-patch-id: 567ef65e01c73a997aa4c5de760362568192d960
prerequisite-patch-id: a9e6711538932946bfa38076003e4dc9184aa262
prerequisite-patch-id: 512255402ab330f220492118efd849f4c52f0c47
prerequisite-patch-id: d0c9a70e63b175929eba276d11b66f2534aca620
prerequisite-patch-id: 4c3e087ece28a5d0d03678b67f0105d7ebcf7bf6
prerequisite-patch-id: ddb8e1c974a12a3535964d146f51fa0f212b6a5c
prerequisite-patch-id: 2ac407431c0ff103165cebc08988ecafd077985d
prerequisite-patch-id: 45559ef88863525882b0c17df056349bd7af9668
prerequisite-patch-id: 6129b78feecc0e2fe1cd0f69bf5ec2eb69f37384
prerequisite-patch-id: c57282b3498b735f43cf8158556ce0d6a259cf50
prerequisite-patch-id: 2120dd3a811aae1e382edc05717f81527c1b4a30
prerequisite-patch-id: 9b7bffe7a98af12d7b23363c24c617ceb2d2384c
prerequisite-patch-id: 81694e410a71fd83bb79f9b0170c6d00cbe24370
prerequisite-patch-id: 7d81f0092dba0a7525d80f583285ad26363c0306
prerequisite-patch-id: 396cb2788d49b44aa0ad56b2d7e979bd28a871dc
prerequisite-patch-id: 5b1fad4c671d8849aaa9fbfd58a1d30cf6d86815
prerequisite-patch-id: ea7018ce274f27ed30f77858074288a9d09a0566
prerequisite-patch-id: fe1682fbe2ca80f21e568cca31fc25553df93785
prerequisite-patch-id: 1ef038cc9d5300d9c077147d196cac63f8c4f894
prerequisite-patch-id: 0ed5c4e693d53d338ec62cdd98c51988001db0d2
prerequisite-patch-id: 773e56839c25fcf928fc932cf630fecd6e5d6b46
prerequisite-patch-id: 1cccaeda9f4708c862a82a1408cc53a85a98daab
prerequisite-patch-id: 37c2080bb2912a037320dbdd1ba48649d5830e3e
prerequisite-patch-id: b6cb99562751f86e1f17d7d7cf8b73a9da7d3b6c
prerequisite-patch-id: ff5a8f5867b72e5665e6ee3062cadfd685104e35
prerequisite-patch-id: b904941c919f04ddac747f52210694501baaaee2
prerequisite-patch-id: 9986289eff5396bdb57e7d13134dcfcc85d515ee
prerequisite-patch-id: 6ac8933075d7ec6a6785e998a2354110e7251573
prerequisite-patch-id: 53177790f84a65a67bd28dce7ede40b5d58ca081
prerequisite-patch-id: b420b4ae637c03b33d9c4f2f880993ac5469e490
prerequisite-patch-id: 80d300bad5804d4c4fcc399123f0e759f1fe7276
prerequisite-patch-id: b2dd8cd36c806dec97f1fbe243d0edd776d9bd42
prerequisite-patch-id: 1c1a71abf462d36bf2ee242d7137d281fb6bec7d
prerequisite-patch-id: 80dfe4c53e79794be7e1b922f124891d22202020
prerequisite-patch-id: 865523e1dfef950b2ea4162fda7f6d87f362cd69
prerequisite-patch-id: aeca0f3a15fc1131b8e0abea34504181983113e6
prerequisite-patch-id: ec448e54b88e8e5e0fa3129e5b0b669e77047a7e
prerequisite-patch-id: 840ca773f3500cabac9bfd51686f17b15c312594
prerequisite-patch-id: c2ef6ab2b8f96572976a718d8af771e67108c2e8
prerequisite-patch-id: c7ad05a2cd7b1664f69f0d5e36598a44c0f665a3
prerequisite-patch-id: 0aae94a7bbe038da8a69329b211d8038cfd3c76f
prerequisite-patch-id: 2c41e42f6a18608062c6e904f68bf3376fce28cb
prerequisite-patch-id: 5213570cdc3ef482df1e4db0431d5e5f08f96fb6
prerequisite-patch-id: 614fb7b432798bd7157b5db2173cce7c25eff09e
prerequisite-patch-id: 23b5989a15a3fb956fccf083cada274b115a8858
prerequisite-patch-id: 21a8fe9d6eec49b7cd6d5787cab2b5fef075c29d
prerequisite-patch-id: ede51c3fb6d4cdf4bb3f0c6b1eaefb662826c48c
prerequisite-patch-id: b6b61bfe937245ceddbbea582ab77d1ee447bca3
prerequisite-patch-id: 04d63fd64e7a5612adf45b820672e18af8cbd476
prerequisite-patch-id: 91d7a58477719591da46beea88831a1b44db3f44
prerequisite-patch-id: dbdcd2d0f2cc03911802aa5a7d38890087368a4b
prerequisite-patch-id: 2b647619060c0452ee61b617b4b965ca884aff86
prerequisite-patch-id: 7e1c6fa058bf315d4c304304b22ebddff39ccfeb
prerequisite-patch-id: 3e99c8710190a95c981f2ae1ed4677b3587a2833
prerequisite-patch-id: 8287aec0e10c2941967931035d2afa307175d0dd
prerequisite-patch-id: 3ed46f4beddfbfa451c0baa4fcabd9e119edbab3
prerequisite-patch-id: bc29c58714e80d9a326020c6df805ac25fca4762
prerequisite-patch-id: 9d6862e70ab58ad5d914ce49f7879fa234af00af
prerequisite-patch-id: 4b24690a9002a104ccdaa90d62d2bd9b014428da
prerequisite-patch-id: fd1240a76849dd081da25ca82c87f77849b8c7f2
prerequisite-patch-id: 0ef6ae0161df0f21986f3ee0a5ffd09e5621c395
prerequisite-patch-id: 4a3f70b300a8569f95f16d6683f48ce636d6c259
prerequisite-patch-id: 465db035b46aca853c9cfe876ec4ab96cf524f4c
prerequisite-patch-id: 33e0c2c652c8e0f8f74de732ad8352344559000b
prerequisite-patch-id: 8fcc6e3d384104e4affc765b589cd3507b76d545
prerequisite-patch-id: e55eb2fc22c28563cd943c5bf2785b90a039a5e9
prerequisite-patch-id: f88aa96985e8e748db55946bb1820d581b53c6ce
prerequisite-patch-id: 4f24aab0a16d38ebfecc37d3d2796c5afc497edd
prerequisite-patch-id: f767248023085da5cde814a5e6de5525c92bfee5
prerequisite-patch-id: 8424fc92a8e020264e1d647beeb31a6a272b8ec6
prerequisite-patch-id: 823c32aa8d12269f7bce42ff79acc478d7b292f9
prerequisite-patch-id: 85f117e6cf32b2855843eb11fc96fc2ba7982062
prerequisite-patch-id: 67682e2e12adebc8ebf2ae7cfd2d87f05f761e5f
prerequisite-patch-id: 2d16c2dc977fefd4bdf229b95f8f9ef23418a5e6
prerequisite-patch-id: b28ece402db6221ceab8d6c4391474c5d30b0868
prerequisite-patch-id: cde6eff2e7583f963bfe855375f08b14df08fc9b
prerequisite-patch-id: ba203e4fef25d6faf8aa2f1da387994e7dd3ec0f
prerequisite-patch-id: d577b0cae4e1bc0cea42daa4a42e083bfb6de369
prerequisite-patch-id: 3646b8eb34f5d8620df976933611477290facb46
prerequisite-patch-id: d8b6bea2ad71143336a0b1ecef236cfbf5effbdd
prerequisite-patch-id: 2a2db557c988987b8153d99fb91508220922433f
prerequisite-patch-id: a0cb598692781ffc6cea1518c8dbd5b0e7dd67e8
prerequisite-patch-id: 035049b107310be71bdc4ac0d5b658291f5fb2e9
prerequisite-patch-id: 87a12699e5f9b0027a6e2f7bef0145653c885870
prerequisite-patch-id: d120234beb4b28079d4e9830d1ba0482417b26b6
prerequisite-patch-id: ffe10fc69177871aa726172f4f2e8f98c8430c9b
prerequisite-patch-id: 85a86370774827d266bbfb57c11e55bd962652e4
prerequisite-patch-id: aa8d8fec1dd330627810dba89e4c0da4974b895e
prerequisite-patch-id: dad074b05ba7a835354314e664750cff88ef797a
prerequisite-patch-id: 8263670629f4fe5a518cb4c3e336312885346d06
prerequisite-patch-id: 9f05c146db5058230eab5ef6473c2c93c6ffacdd
prerequisite-patch-id: 7f4afcfe65490c8813eba059d79a2cc5db973ef2
prerequisite-patch-id: 9fc6a7095a98d62b47e601c671db9c79aa14d947
prerequisite-patch-id: 8b0230cdf83d48cf54efdf48c0e88a4057e0110b
prerequisite-patch-id: 9569d0cc65a9eee9745386d72b0130910a84a9a2
prerequisite-patch-id: 5e8eb2cd3590bbba4f7e8f63c5684fc12c53c849
prerequisite-patch-id: 056a89538e029da0c1d4c24fcd703b3fc2e50e77
prerequisite-patch-id: 4966102cc96c9ba9f011cff5a852149840be39b9
prerequisite-patch-id: 5edfd15750901693bbdc5462dd2dd0c3be0598d5
prerequisite-patch-id: ab6c2c3aaa9d6a92eaa72bd3f7eb30885b231ed8
prerequisite-patch-id: f773da22f80b607733cacd29d6cd4b6fac5dae1e
prerequisite-patch-id: 5be77ce45f1ec4f39ec9d07bab0d77f341542f65
prerequisite-patch-id: 96ee9929102911f96c7e0a9ce973cde59f38069b
prerequisite-patch-id: fb294c165cdee38ee64694bb25220a141dfab8f3
prerequisite-patch-id: 2dae871486c041ccc0dd3f9b1f2bd3052ebba9b3
prerequisite-patch-id: 20cca666d803dda1650ae1c3544d6d0ed671bf04
prerequisite-patch-id: 9863a0dc1cd38491842cdf2c57796500f1f3e734
prerequisite-patch-id: a6ab06b39ad20e8125dc6fcd475d1d09aa81f5a0
prerequisite-patch-id: 18d618f0ba2a6896495705c64eec2c900bcee476
prerequisite-patch-id: a3dc8f367bfcf60d1f58e7f20042d8da81cb6d51
prerequisite-patch-id: a08073cd4439a2a767937690ddc615cb8b807269
prerequisite-patch-id: 66ba00c2135c218852668ca18207d3f06a9c36ea
prerequisite-patch-id: 97eb44a80c8bab365246c7f24f8b8fd914be1bc3
prerequisite-patch-id: 520491f0d518f3463d429e77444e231fa6016dd9
prerequisite-patch-id: 459fda84ad92fcd4a497d00ce1690cd19f2cbacb
prerequisite-patch-id: 82330aed01b91c49acbd577ba75bb73bcae6ac90
prerequisite-patch-id: 3472e76b184b704cb78800dd3dac759d6bb6fd3c
prerequisite-patch-id: 27a2c12f92f79f28cd1672dcb40cabe3072601e7
prerequisite-patch-id: e39d8de35c1cedc1aad41cb43c060824cd93045c
prerequisite-patch-id: 8069e9140edc93b03dfb481dd69ae9c0c45363ea
prerequisite-patch-id: c30d4414c810c625bf7531ea589f9302b8070b73
prerequisite-patch-id: ee72737926d2c1e10a9beddfdd90e9d53961314b
prerequisite-patch-id: 38d3c9c3a55cd66cc72dafcfe8f23c2a39f3bf54
prerequisite-patch-id: 051edde2467191de1e1fcb5301c13647380dab44
prerequisite-patch-id: edc3297f2a70983cb78a827264403722fa9c55bc
prerequisite-patch-id: 3f8ce966aed1b38847f52db383f92a4bc9ab01fb
prerequisite-patch-id: af2ff44a7b919da2ee06cc40893fbcd3f65d32f7
prerequisite-patch-id: f3a2b9ef97be3fa250ea0a6467b2d5a782315aa5
prerequisite-patch-id: 6bdd2119448e84aacbdc6a54d999d47fc69dac81
prerequisite-patch-id: 38cc9502c93c71324f1a11a1fd438374fc41ca84
prerequisite-patch-id: 059d1f35274246575ca4fa9b4ee33cd4801479d1
prerequisite-patch-id: 1cf4ea774a145cdba617eb8be5c1f7afe5817772
prerequisite-patch-id: 46375dcd0da4629e6031336351b9cf688691d7c5
prerequisite-patch-id: 8948139735836adb9fbc51d93b969911dc5b38e8
prerequisite-patch-id: 7ec91bd0149f347c479c906e73cabaa28601ab3d
prerequisite-patch-id: c711522b63f640b7504767b3af7adc05a0b36cac
prerequisite-patch-id: 579d712ec3f942ba0c362e242c71361c151092b5
prerequisite-patch-id: fa4629a3909fbae3917d8c067cce4f673ee857c0
prerequisite-patch-id: 906f41ea35bfd3bcbdd05dac490d43e0674dacf6
prerequisite-patch-id: 34d473ba50399f8cfaf583f4def12de776aad65d
prerequisite-patch-id: 5a6a2b41c9312687512db5d12bac95114b8d8719
prerequisite-patch-id: e6ec4cd9eb5e93f3443f5f496a1b990a95b5d96d
prerequisite-patch-id: 4be4bbb454444d6f314c2b6ad6a73290184e6d57
prerequisite-patch-id: fd9cd7882f2a8f1b6141f48ff5c3da708839d03f
prerequisite-patch-id: 952471fa5477280d399978c05fbc9bfe6d2d33b0
prerequisite-patch-id: 01c5b37358de833f85de1954f770fe0489818a16
prerequisite-patch-id: dd14b47d6cd8ff14d1bc78c187c061f6fe262fda
prerequisite-patch-id: f4eba0865e7f91bce3fb4b2c627ee123980e0ff9
prerequisite-patch-id: 72984784b916e2d94ede8ab7d52cc0dedfa37c41
prerequisite-patch-id: 4a035df4222f1e0cfb52b07af31859ffcc5c640c
prerequisite-patch-id: ba6b390d7cdddfe0369c17048618e53774fb2b8f
prerequisite-patch-id: 5d6a9109235897856c4420380665c54b5acd0dca
prerequisite-patch-id: ef71440997dfc0cdede6cbd808644c357852b84c
prerequisite-patch-id: 0b8ff4ecf38cd285b2eadecccab9595125d1bd7b
prerequisite-patch-id: b79a71a747585b27fc1fcdf0dc95134a46f77d86
prerequisite-patch-id: 64bbb97fe9678b02c2581edad4d9c2ff314bd4e5
prerequisite-patch-id: a8a2a878738bd230db8d3a7ded08346001265c87
prerequisite-patch-id: 09d6a9b7bb626bb34bc4ec646535011e7a0e5c18
prerequisite-patch-id: e5a5a16f26b74f5300f1dd7f8024610b59a96120
prerequisite-patch-id: 4eb3a87e32fbc9273f399ced4f81187b87fd3c95
prerequisite-patch-id: 3a6cc56e35ca9b7dd18ed0532577c428a41b4422
prerequisite-patch-id: 2548b9c3e6b8f34324eb2c8eb0d79696176ae421
prerequisite-patch-id: e5fbb141fae0d0be32acadb71e95d9d1da0fd014
prerequisite-patch-id: 0301f1c39b1ea6b16850f6c764ef0536561718f6
prerequisite-patch-id: 71ad5e066dc6cec71e4f79c56af9435a4d04af9b
prerequisite-patch-id: 5af4f801ad4a94f203e0cc62c89f88637ea44e24
prerequisite-patch-id: f05191a7221acde4cb4b9c18708e4bf31fb22753
prerequisite-patch-id: fc11a3248fe37459058eab4579c70427fa3afb8e
prerequisite-patch-id: 2cfcf98847fb3b311a2340ee488bb3fc21562530
prerequisite-patch-id: daac18c300bf0dcfac5a2b7046cc543d694d30c5
prerequisite-patch-id: cbbd40736f7a797ff76b0fe2b1ddfb559e14e666
prerequisite-patch-id: ac7f4d5dfb5cfec475ac4f3dee8f26077b5d1ab6
prerequisite-patch-id: aab511a6975936fb0198697fca7b61cc2277e1b4
prerequisite-patch-id: d4f40aee0948578a4195456554ba88c228d5bf7f
prerequisite-patch-id: 38d706b45998b7b5fbf90e27ecf9c856354f5a23
prerequisite-patch-id: 55342ab7d677ef4ca661d7ed4ad6d66b1216e3cd

Best regards,
--  
With best wishes
Dmitry


^ permalink raw reply	[flat|nested] 19+ messages in thread

* [PATCH v2 01/16] media: iris: Skip UBWC configuration when not supported
  2026-05-13 12:45 [PATCH v2 00/16] media: iris: Add AR50LT core support and enable Agatti platform Dmitry Baryshkov
@ 2026-05-13 12:45 ` Dmitry Baryshkov
  2026-05-13 12:45 ` [PATCH v2 02/16] media: iris: Filter UBWC raw formats based on hardware capabilities Dmitry Baryshkov
                   ` (15 subsequent siblings)
  16 siblings, 0 replies; 19+ messages in thread
From: Dmitry Baryshkov @ 2026-05-13 12:45 UTC (permalink / raw)
  To: Vikash Garodia, Abhinav Kumar, Bryan O'Donoghue,
	Mauro Carvalho Chehab, Bjorn Andersson, Konrad Dybcio,
	Rob Herring, Krzysztof Kozlowski, Conor Dooley, Vishnu Reddy
  Cc: linux-media, linux-arm-msm, linux-kernel, devicetree,
	Dikshita Agarwal, Konrad Dybcio

From: Dikshita Agarwal <dikshita.agarwal@oss.qualcomm.com>

UBWC configuration is not applicable to all SoCs. Add a check to avoid
configuring UBWC during sys init on unsupported platforms.

Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Signed-off-by: Dikshita Agarwal <dikshita.agarwal@oss.qualcomm.com>
Reviewed-by: Vishnu Reddy <busanna.reddy@oss.qualcomm.com>
Reviewed-by: Vikash Garodia <vikash.garodia@oss.qualcomm.com>
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
---
 drivers/media/platform/qcom/iris/iris_hfi_gen2_packet.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/drivers/media/platform/qcom/iris/iris_hfi_gen2_packet.c b/drivers/media/platform/qcom/iris/iris_hfi_gen2_packet.c
index 0d05dd2afc07..6e04175eb904 100644
--- a/drivers/media/platform/qcom/iris/iris_hfi_gen2_packet.c
+++ b/drivers/media/platform/qcom/iris/iris_hfi_gen2_packet.c
@@ -140,6 +140,9 @@ void iris_hfi_gen2_packet_sys_init(struct iris_core *core, struct iris_hfi_heade
 				    &payload,
 				    sizeof(u32));
 
+	if (!ubwc->ubwc_enc_version)
+		return;
+
 	payload = qcom_ubwc_macrotile_mode(ubwc) ? 8 : 4;
 	iris_hfi_gen2_create_packet(hdr,
 				    HFI_PROP_UBWC_MAX_CHANNELS,

-- 
2.47.3


^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [PATCH v2 02/16] media: iris: Filter UBWC raw formats based on hardware capabilities
  2026-05-13 12:45 [PATCH v2 00/16] media: iris: Add AR50LT core support and enable Agatti platform Dmitry Baryshkov
  2026-05-13 12:45 ` [PATCH v2 01/16] media: iris: Skip UBWC configuration when not supported Dmitry Baryshkov
@ 2026-05-13 12:45 ` Dmitry Baryshkov
  2026-05-13 12:45 ` [PATCH v2 03/16] media: iris: Introduce set_preset_register as a vpu_op Dmitry Baryshkov
                   ` (14 subsequent siblings)
  16 siblings, 0 replies; 19+ messages in thread
From: Dmitry Baryshkov @ 2026-05-13 12:45 UTC (permalink / raw)
  To: Vikash Garodia, Abhinav Kumar, Bryan O'Donoghue,
	Mauro Carvalho Chehab, Bjorn Andersson, Konrad Dybcio,
	Rob Herring, Krzysztof Kozlowski, Conor Dooley, Vishnu Reddy
  Cc: linux-media, linux-arm-msm, linux-kernel, devicetree,
	Dikshita Agarwal

From: Dikshita Agarwal <dikshita.agarwal@oss.qualcomm.com>

The raw formats supported by Iris were previously advertised
unconditionally, assuming UBWC support on all platforms. However, some
platforms do not support UBWC which results in incorrect format
capability exposure.

Use the UBWC configuration provided by the platform to dynamically
filter raw formats at runtime. If UBWC is not supported, UBWC-based
formats are omitted from the advertised capability list, while linear
formats remain available.

Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Signed-off-by: Dikshita Agarwal <dikshita.agarwal@oss.qualcomm.com>
Reviewed-by: Vishnu Reddy <busanna.reddy@oss.qualcomm.com>
Reviewed-by: Vikash Garodia <vikash.garodia@oss.qualcomm.com>
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
---
 drivers/media/platform/qcom/iris/iris_vdec.c | 9 +++++++++
 drivers/media/platform/qcom/iris/iris_venc.c | 9 +++++++++
 2 files changed, 18 insertions(+)

diff --git a/drivers/media/platform/qcom/iris/iris_vdec.c b/drivers/media/platform/qcom/iris/iris_vdec.c
index ff8d664558af..bd44e6437480 100644
--- a/drivers/media/platform/qcom/iris/iris_vdec.c
+++ b/drivers/media/platform/qcom/iris/iris_vdec.c
@@ -3,6 +3,7 @@
  * Copyright (c) 2022-2024 Qualcomm Innovation Center, Inc. All rights reserved.
  */
 
+#include <linux/soc/qcom/ubwc.h>
 #include <media/v4l2-event.h>
 #include <media/v4l2-mem2mem.h>
 
@@ -74,6 +75,7 @@ static const u32 iris_vdec_formats_cap[] = {
 
 static bool check_format(struct iris_inst *inst, u32 pixfmt, u32 type)
 {
+	const struct qcom_ubwc_cfg_data *ubwc = inst->core->ubwc_cfg;
 	unsigned int size, i;
 	const u32 *fmt;
 
@@ -85,6 +87,9 @@ static bool check_format(struct iris_inst *inst, u32 pixfmt, u32 type)
 	case V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE:
 		fmt = iris_vdec_formats_cap;
 		size = ARRAY_SIZE(iris_vdec_formats_cap);
+		/* Last format is UBWC; drop it if UBWC is unsupported */
+		if (!ubwc->ubwc_enc_version)
+			size--;
 		break;
 	default:
 		return false;
@@ -100,6 +105,7 @@ static bool check_format(struct iris_inst *inst, u32 pixfmt, u32 type)
 
 static u32 find_format_by_index(struct iris_inst *inst, u32 index, u32 type)
 {
+	const struct qcom_ubwc_cfg_data *ubwc = inst->core->ubwc_cfg;
 	unsigned int size;
 	const u32 *fmt;
 
@@ -111,6 +117,9 @@ static u32 find_format_by_index(struct iris_inst *inst, u32 index, u32 type)
 	case V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE:
 		fmt = iris_vdec_formats_cap;
 		size = ARRAY_SIZE(iris_vdec_formats_cap);
+		/* Last format is UBWC; drop it if UBWC is unsupported */
+		if (!ubwc->ubwc_enc_version)
+			size--;
 		break;
 	default:
 		return 0;
diff --git a/drivers/media/platform/qcom/iris/iris_venc.c b/drivers/media/platform/qcom/iris/iris_venc.c
index 2398992d0596..c41f4103ccc3 100644
--- a/drivers/media/platform/qcom/iris/iris_venc.c
+++ b/drivers/media/platform/qcom/iris/iris_venc.c
@@ -3,6 +3,7 @@
  * Copyright (c) 2022-2025 Qualcomm Innovation Center, Inc. All rights reserved.
  */
 
+#include <linux/soc/qcom/ubwc.h>
 #include <media/v4l2-event.h>
 #include <media/v4l2-mem2mem.h>
 
@@ -97,6 +98,7 @@ static const u32 iris_venc_formats_out[] = {
 
 static bool check_format(struct iris_inst *inst, u32 pixfmt, u32 type)
 {
+	const struct qcom_ubwc_cfg_data *ubwc = inst->core->ubwc_cfg;
 	unsigned int size, i;
 	const u32 *fmt;
 
@@ -104,6 +106,9 @@ static bool check_format(struct iris_inst *inst, u32 pixfmt, u32 type)
 	case V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE:
 		fmt = iris_venc_formats_out;
 		size = ARRAY_SIZE(iris_venc_formats_out);
+		/* Last format is UBWC; drop it if UBWC is unsupported */
+		if (!ubwc->ubwc_enc_version)
+			size--;
 		break;
 	case V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE:
 		fmt = iris_venc_formats_cap;
@@ -123,6 +128,7 @@ static bool check_format(struct iris_inst *inst, u32 pixfmt, u32 type)
 
 static u32 find_format_by_index(struct iris_inst *inst, u32 index, u32 type)
 {
+	const struct qcom_ubwc_cfg_data *ubwc = inst->core->ubwc_cfg;
 	unsigned int size;
 	const u32 *fmt;
 
@@ -130,6 +136,9 @@ static u32 find_format_by_index(struct iris_inst *inst, u32 index, u32 type)
 	case V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE:
 		fmt = iris_venc_formats_out;
 		size = ARRAY_SIZE(iris_venc_formats_out);
+		/* Last format is UBWC; drop it if UBWC is unsupported */
+		if (!ubwc->ubwc_enc_version)
+			size--;
 		break;
 	case V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE:
 		fmt = iris_venc_formats_cap;

-- 
2.47.3


^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [PATCH v2 03/16] media: iris: Introduce set_preset_register as a vpu_op
  2026-05-13 12:45 [PATCH v2 00/16] media: iris: Add AR50LT core support and enable Agatti platform Dmitry Baryshkov
  2026-05-13 12:45 ` [PATCH v2 01/16] media: iris: Skip UBWC configuration when not supported Dmitry Baryshkov
  2026-05-13 12:45 ` [PATCH v2 02/16] media: iris: Filter UBWC raw formats based on hardware capabilities Dmitry Baryshkov
@ 2026-05-13 12:45 ` Dmitry Baryshkov
  2026-05-13 12:45 ` [PATCH v2 04/16] media: iris: Introduce interrupt_init " Dmitry Baryshkov
                   ` (13 subsequent siblings)
  16 siblings, 0 replies; 19+ messages in thread
From: Dmitry Baryshkov @ 2026-05-13 12:45 UTC (permalink / raw)
  To: Vikash Garodia, Abhinav Kumar, Bryan O'Donoghue,
	Mauro Carvalho Chehab, Bjorn Andersson, Konrad Dybcio,
	Rob Herring, Krzysztof Kozlowski, Conor Dooley, Vishnu Reddy
  Cc: linux-media, linux-arm-msm, linux-kernel, devicetree,
	Dikshita Agarwal

From: Dikshita Agarwal <dikshita.agarwal@oss.qualcomm.com>

The set_preset_registers sequence is currently shared across all
supported devices. Starting with Qualcomm QCM2290 (AR50LT), the register
programming would differ.

Move set_preset_register into a vpu_op to allow per-device
customization.

This change prepares the driver for upcoming hardware variants.
No functional change so far for existing devices.

Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Signed-off-by: Dikshita Agarwal <dikshita.agarwal@oss.qualcomm.com>
Reviewed-by: Vishnu Reddy <busanna.reddy@oss.qualcomm.com>
Reviewed-by: Vikash Garodia <vikash.garodia@oss.qualcomm.com>
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
---
 drivers/media/platform/qcom/iris/iris_vpu2.c       | 1 +
 drivers/media/platform/qcom/iris/iris_vpu3x.c      | 3 +++
 drivers/media/platform/qcom/iris/iris_vpu4x.c      | 1 +
 drivers/media/platform/qcom/iris/iris_vpu_common.c | 2 +-
 drivers/media/platform/qcom/iris/iris_vpu_common.h | 1 +
 5 files changed, 7 insertions(+), 1 deletion(-)

diff --git a/drivers/media/platform/qcom/iris/iris_vpu2.c b/drivers/media/platform/qcom/iris/iris_vpu2.c
index 01ef40f38957..d61902c9a213 100644
--- a/drivers/media/platform/qcom/iris/iris_vpu2.c
+++ b/drivers/media/platform/qcom/iris/iris_vpu2.c
@@ -45,4 +45,5 @@ const struct vpu_ops iris_vpu2_ops = {
 	.power_on_controller = iris_vpu_power_on_controller,
 	.calc_freq = iris_vpu2_calc_freq,
 	.set_hwmode = iris_vpu_set_hwmode,
+	.set_preset_registers = iris_vpu_set_preset_registers,
 };
diff --git a/drivers/media/platform/qcom/iris/iris_vpu3x.c b/drivers/media/platform/qcom/iris/iris_vpu3x.c
index 3dad47be78b5..dc02ced1b931 100644
--- a/drivers/media/platform/qcom/iris/iris_vpu3x.c
+++ b/drivers/media/platform/qcom/iris/iris_vpu3x.c
@@ -261,6 +261,7 @@ const struct vpu_ops iris_vpu3_ops = {
 	.power_on_controller = iris_vpu_power_on_controller,
 	.calc_freq = iris_vpu3x_vpu4x_calculate_frequency,
 	.set_hwmode = iris_vpu_set_hwmode,
+	.set_preset_registers = iris_vpu_set_preset_registers,
 };
 
 const struct vpu_ops iris_vpu33_ops = {
@@ -270,6 +271,7 @@ const struct vpu_ops iris_vpu33_ops = {
 	.power_on_controller = iris_vpu_power_on_controller,
 	.calc_freq = iris_vpu3x_vpu4x_calculate_frequency,
 	.set_hwmode = iris_vpu_set_hwmode,
+	.set_preset_registers = iris_vpu_set_preset_registers,
 };
 
 const struct vpu_ops iris_vpu35_ops = {
@@ -280,4 +282,5 @@ const struct vpu_ops iris_vpu35_ops = {
 	.program_bootup_registers = iris_vpu35_vpu4x_program_bootup_registers,
 	.calc_freq = iris_vpu3x_vpu4x_calculate_frequency,
 	.set_hwmode = iris_vpu_set_hwmode,
+	.set_preset_registers = iris_vpu_set_preset_registers,
 };
diff --git a/drivers/media/platform/qcom/iris/iris_vpu4x.c b/drivers/media/platform/qcom/iris/iris_vpu4x.c
index 02e100a4045f..f608a297d4a3 100644
--- a/drivers/media/platform/qcom/iris/iris_vpu4x.c
+++ b/drivers/media/platform/qcom/iris/iris_vpu4x.c
@@ -368,4 +368,5 @@ const struct vpu_ops iris_vpu4x_ops = {
 	.program_bootup_registers = iris_vpu35_vpu4x_program_bootup_registers,
 	.calc_freq = iris_vpu3x_vpu4x_calculate_frequency,
 	.set_hwmode = iris_vpu4x_set_hwmode,
+	.set_preset_registers = iris_vpu_set_preset_registers,
 };
diff --git a/drivers/media/platform/qcom/iris/iris_vpu_common.c b/drivers/media/platform/qcom/iris/iris_vpu_common.c
index 7bba3b6209c2..ff0070c85ccf 100644
--- a/drivers/media/platform/qcom/iris/iris_vpu_common.c
+++ b/drivers/media/platform/qcom/iris/iris_vpu_common.c
@@ -472,7 +472,7 @@ int iris_vpu_power_on(struct iris_core *core)
 
 	iris_opp_set_rate(core->dev, freq);
 
-	iris_vpu_set_preset_registers(core);
+	core->iris_platform_data->vpu_ops->set_preset_registers(core);
 
 	iris_vpu_interrupt_init(core);
 	core->intr_status = 0;
diff --git a/drivers/media/platform/qcom/iris/iris_vpu_common.h b/drivers/media/platform/qcom/iris/iris_vpu_common.h
index 09799a375c14..21ed4c9bd5e3 100644
--- a/drivers/media/platform/qcom/iris/iris_vpu_common.h
+++ b/drivers/media/platform/qcom/iris/iris_vpu_common.h
@@ -22,6 +22,7 @@ struct vpu_ops {
 	void (*program_bootup_registers)(struct iris_core *core);
 	u64 (*calc_freq)(struct iris_inst *inst, size_t data_size);
 	int (*set_hwmode)(struct iris_core *core);
+	void (*set_preset_registers)(struct iris_core *core);
 };
 
 int iris_vpu_boot_firmware(struct iris_core *core);

-- 
2.47.3


^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [PATCH v2 04/16] media: iris: Introduce interrupt_init as a vpu_op
  2026-05-13 12:45 [PATCH v2 00/16] media: iris: Add AR50LT core support and enable Agatti platform Dmitry Baryshkov
                   ` (2 preceding siblings ...)
  2026-05-13 12:45 ` [PATCH v2 03/16] media: iris: Introduce set_preset_register as a vpu_op Dmitry Baryshkov
@ 2026-05-13 12:45 ` Dmitry Baryshkov
  2026-05-13 12:45 ` [PATCH v2 05/16] media: iris: add vpu op hook to disable ARP buffer Dmitry Baryshkov
                   ` (12 subsequent siblings)
  16 siblings, 0 replies; 19+ messages in thread
From: Dmitry Baryshkov @ 2026-05-13 12:45 UTC (permalink / raw)
  To: Vikash Garodia, Abhinav Kumar, Bryan O'Donoghue,
	Mauro Carvalho Chehab, Bjorn Andersson, Konrad Dybcio,
	Rob Herring, Krzysztof Kozlowski, Conor Dooley, Vishnu Reddy
  Cc: linux-media, linux-arm-msm, linux-kernel, devicetree,
	Dikshita Agarwal

From: Dikshita Agarwal <dikshita.agarwal@oss.qualcomm.com>

The interrupt_init sequence is currently shared across all supported
devices. Starting with Qualcomm QCM2290 (AR50LT), the register
programming would differ.

Move interrupt_init into a vpu_op to allow per-device customization.

This change prepares the driver for upcoming hardware variants.
No functional change so far for existing devices.

Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Signed-off-by: Dikshita Agarwal <dikshita.agarwal@oss.qualcomm.com>
Reviewed-by: Vikash Garodia <vikash.garodia@oss.qualcomm.com>
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
---
 drivers/media/platform/qcom/iris/iris_vpu2.c       | 1 +
 drivers/media/platform/qcom/iris/iris_vpu3x.c      | 3 +++
 drivers/media/platform/qcom/iris/iris_vpu4x.c      | 1 +
 drivers/media/platform/qcom/iris/iris_vpu_common.c | 4 ++--
 drivers/media/platform/qcom/iris/iris_vpu_common.h | 2 ++
 5 files changed, 9 insertions(+), 2 deletions(-)

diff --git a/drivers/media/platform/qcom/iris/iris_vpu2.c b/drivers/media/platform/qcom/iris/iris_vpu2.c
index d61902c9a213..d49d22b14753 100644
--- a/drivers/media/platform/qcom/iris/iris_vpu2.c
+++ b/drivers/media/platform/qcom/iris/iris_vpu2.c
@@ -46,4 +46,5 @@ const struct vpu_ops iris_vpu2_ops = {
 	.calc_freq = iris_vpu2_calc_freq,
 	.set_hwmode = iris_vpu_set_hwmode,
 	.set_preset_registers = iris_vpu_set_preset_registers,
+	.interrupt_init = iris_vpu_interrupt_init,
 };
diff --git a/drivers/media/platform/qcom/iris/iris_vpu3x.c b/drivers/media/platform/qcom/iris/iris_vpu3x.c
index dc02ced1b931..c3b760730c98 100644
--- a/drivers/media/platform/qcom/iris/iris_vpu3x.c
+++ b/drivers/media/platform/qcom/iris/iris_vpu3x.c
@@ -262,6 +262,7 @@ const struct vpu_ops iris_vpu3_ops = {
 	.calc_freq = iris_vpu3x_vpu4x_calculate_frequency,
 	.set_hwmode = iris_vpu_set_hwmode,
 	.set_preset_registers = iris_vpu_set_preset_registers,
+	.interrupt_init = iris_vpu_interrupt_init,
 };
 
 const struct vpu_ops iris_vpu33_ops = {
@@ -272,6 +273,7 @@ const struct vpu_ops iris_vpu33_ops = {
 	.calc_freq = iris_vpu3x_vpu4x_calculate_frequency,
 	.set_hwmode = iris_vpu_set_hwmode,
 	.set_preset_registers = iris_vpu_set_preset_registers,
+	.interrupt_init = iris_vpu_interrupt_init,
 };
 
 const struct vpu_ops iris_vpu35_ops = {
@@ -283,4 +285,5 @@ const struct vpu_ops iris_vpu35_ops = {
 	.calc_freq = iris_vpu3x_vpu4x_calculate_frequency,
 	.set_hwmode = iris_vpu_set_hwmode,
 	.set_preset_registers = iris_vpu_set_preset_registers,
+	.interrupt_init = iris_vpu_interrupt_init,
 };
diff --git a/drivers/media/platform/qcom/iris/iris_vpu4x.c b/drivers/media/platform/qcom/iris/iris_vpu4x.c
index f608a297d4a3..90ccdc0d2a07 100644
--- a/drivers/media/platform/qcom/iris/iris_vpu4x.c
+++ b/drivers/media/platform/qcom/iris/iris_vpu4x.c
@@ -369,4 +369,5 @@ const struct vpu_ops iris_vpu4x_ops = {
 	.calc_freq = iris_vpu3x_vpu4x_calculate_frequency,
 	.set_hwmode = iris_vpu4x_set_hwmode,
 	.set_preset_registers = iris_vpu_set_preset_registers,
+	.interrupt_init = iris_vpu_interrupt_init,
 };
diff --git a/drivers/media/platform/qcom/iris/iris_vpu_common.c b/drivers/media/platform/qcom/iris/iris_vpu_common.c
index ff0070c85ccf..59e4d68d042f 100644
--- a/drivers/media/platform/qcom/iris/iris_vpu_common.c
+++ b/drivers/media/platform/qcom/iris/iris_vpu_common.c
@@ -31,7 +31,7 @@
 #define UC_REGION_ADDR				(CPU_CS_BASE_OFFS + 0x64)
 #define UC_REGION_SIZE				(CPU_CS_BASE_OFFS + 0x68)
 
-static void iris_vpu_interrupt_init(struct iris_core *core)
+void iris_vpu_interrupt_init(struct iris_core *core)
 {
 	u32 mask_val;
 
@@ -474,7 +474,7 @@ int iris_vpu_power_on(struct iris_core *core)
 
 	core->iris_platform_data->vpu_ops->set_preset_registers(core);
 
-	iris_vpu_interrupt_init(core);
+	core->iris_platform_data->vpu_ops->interrupt_init(core);
 	core->intr_status = 0;
 	enable_irq(core->irq);
 
diff --git a/drivers/media/platform/qcom/iris/iris_vpu_common.h b/drivers/media/platform/qcom/iris/iris_vpu_common.h
index 21ed4c9bd5e3..9151545065cd 100644
--- a/drivers/media/platform/qcom/iris/iris_vpu_common.h
+++ b/drivers/media/platform/qcom/iris/iris_vpu_common.h
@@ -23,6 +23,7 @@ struct vpu_ops {
 	u64 (*calc_freq)(struct iris_inst *inst, size_t data_size);
 	int (*set_hwmode)(struct iris_core *core);
 	void (*set_preset_registers)(struct iris_core *core);
+	void (*interrupt_init)(struct iris_core *core);
 };
 
 int iris_vpu_boot_firmware(struct iris_core *core);
@@ -44,5 +45,6 @@ void iris_vpu35_vpu4x_program_bootup_registers(struct iris_core *core);
 u64 iris_vpu3x_vpu4x_calculate_frequency(struct iris_inst *inst, size_t data_size);
 
 void iris_vpu_set_preset_registers(struct iris_core *core);
+void iris_vpu_interrupt_init(struct iris_core *core);
 
 #endif

-- 
2.47.3


^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [PATCH v2 05/16] media: iris: add vpu op hook to disable ARP buffer
  2026-05-13 12:45 [PATCH v2 00/16] media: iris: Add AR50LT core support and enable Agatti platform Dmitry Baryshkov
                   ` (3 preceding siblings ...)
  2026-05-13 12:45 ` [PATCH v2 04/16] media: iris: Introduce interrupt_init " Dmitry Baryshkov
@ 2026-05-13 12:45 ` Dmitry Baryshkov
  2026-05-13 12:45 ` [PATCH v2 06/16] media: iris: Add platform data field for watchdog interrupt mask Dmitry Baryshkov
                   ` (11 subsequent siblings)
  16 siblings, 0 replies; 19+ messages in thread
From: Dmitry Baryshkov @ 2026-05-13 12:45 UTC (permalink / raw)
  To: Vikash Garodia, Abhinav Kumar, Bryan O'Donoghue,
	Mauro Carvalho Chehab, Bjorn Andersson, Konrad Dybcio,
	Rob Herring, Krzysztof Kozlowski, Conor Dooley, Vishnu Reddy
  Cc: linux-media, linux-arm-msm, linux-kernel, devicetree,
	Dikshita Agarwal

From: Dikshita Agarwal <dikshita.agarwal@oss.qualcomm.com>

On AR50LT platforms AbsolutelyPerfectRouting (ARP) needs to be disabled
so firmware can configure the ARP internal buffer as non-secure for
encoder usage. In preparation of adding support for AR50LT platforms,
add an optional disable_arp callback to the VPU ops and invoke it from
core init and resume paths.

No functional change for existing platforms.

Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Signed-off-by: Dikshita Agarwal <dikshita.agarwal@oss.qualcomm.com>
Reviewed-by: Vishnu Reddy <busanna.reddy@oss.qualcomm.com>
Reviewed-by: Vikash Garodia <vikash.garodia@oss.qualcomm.com>
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
---
 drivers/media/platform/qcom/iris/iris_core.c       | 4 ++++
 drivers/media/platform/qcom/iris/iris_hfi_common.c | 4 ++++
 drivers/media/platform/qcom/iris/iris_vpu_common.h | 1 +
 3 files changed, 9 insertions(+)

diff --git a/drivers/media/platform/qcom/iris/iris_core.c b/drivers/media/platform/qcom/iris/iris_core.c
index 52bf56e517f9..bd22076f3557 100644
--- a/drivers/media/platform/qcom/iris/iris_core.c
+++ b/drivers/media/platform/qcom/iris/iris_core.c
@@ -45,6 +45,7 @@ static int iris_wait_for_system_response(struct iris_core *core)
 
 int iris_core_init(struct iris_core *core)
 {
+	const struct vpu_ops *vpu_ops = core->iris_platform_data->vpu_ops;
 	int ret;
 
 	mutex_lock(&core->lock);
@@ -78,6 +79,9 @@ int iris_core_init(struct iris_core *core)
 	if (ret)
 		goto error_unload_fw;
 
+	if (vpu_ops->disable_arp)
+		vpu_ops->disable_arp(core);
+
 	core->iris_firmware_data->init_hfi_ops(core);
 
 	ret = iris_hfi_core_init(core);
diff --git a/drivers/media/platform/qcom/iris/iris_hfi_common.c b/drivers/media/platform/qcom/iris/iris_hfi_common.c
index 8769ec61f117..8f04f3793d9a 100644
--- a/drivers/media/platform/qcom/iris/iris_hfi_common.c
+++ b/drivers/media/platform/qcom/iris/iris_hfi_common.c
@@ -144,6 +144,7 @@ int iris_hfi_pm_suspend(struct iris_core *core)
 
 int iris_hfi_pm_resume(struct iris_core *core)
 {
+	const struct vpu_ops *vpu_ops = core->iris_platform_data->vpu_ops;
 	const struct iris_hfi_sys_ops *ops = core->hfi_sys_ops;
 	int ret;
 
@@ -163,6 +164,9 @@ int iris_hfi_pm_resume(struct iris_core *core)
 	if (ret)
 		goto err_suspend_hw;
 
+	if (vpu_ops->disable_arp)
+		vpu_ops->disable_arp(core);
+
 	ret = ops->sys_interframe_powercollapse(core);
 	if (ret)
 		goto err_suspend_hw;
diff --git a/drivers/media/platform/qcom/iris/iris_vpu_common.h b/drivers/media/platform/qcom/iris/iris_vpu_common.h
index 9151545065cd..71d96921ed37 100644
--- a/drivers/media/platform/qcom/iris/iris_vpu_common.h
+++ b/drivers/media/platform/qcom/iris/iris_vpu_common.h
@@ -24,6 +24,7 @@ struct vpu_ops {
 	int (*set_hwmode)(struct iris_core *core);
 	void (*set_preset_registers)(struct iris_core *core);
 	void (*interrupt_init)(struct iris_core *core);
+	void (*disable_arp)(struct iris_core *core);
 };
 
 int iris_vpu_boot_firmware(struct iris_core *core);

-- 
2.47.3


^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [PATCH v2 06/16] media: iris: Add platform data field for watchdog interrupt mask
  2026-05-13 12:45 [PATCH v2 00/16] media: iris: Add AR50LT core support and enable Agatti platform Dmitry Baryshkov
                   ` (4 preceding siblings ...)
  2026-05-13 12:45 ` [PATCH v2 05/16] media: iris: add vpu op hook to disable ARP buffer Dmitry Baryshkov
@ 2026-05-13 12:45 ` Dmitry Baryshkov
  2026-05-13 12:45 ` [PATCH v2 07/16] media: iris: Add platform flag for instantaneous bandwidth voting Dmitry Baryshkov
                   ` (10 subsequent siblings)
  16 siblings, 0 replies; 19+ messages in thread
From: Dmitry Baryshkov @ 2026-05-13 12:45 UTC (permalink / raw)
  To: Vikash Garodia, Abhinav Kumar, Bryan O'Donoghue,
	Mauro Carvalho Chehab, Bjorn Andersson, Konrad Dybcio,
	Rob Herring, Krzysztof Kozlowski, Conor Dooley, Vishnu Reddy
  Cc: linux-media, linux-arm-msm, linux-kernel, devicetree,
	Dikshita Agarwal

From: Dikshita Agarwal <dikshita.agarwal@oss.qualcomm.com>

For AR50LT core, the value of WRAPPER_INTR_STATUS_A2HWD_BMASK differs
from the currently supported VPUs. In preparation for adding AR50LT
support in subsequent patches, introduce a platform data field,
wd_intr_mask, to capture the watchdog interrupt bitmask per platform.

Signed-off-by: Dikshita Agarwal <dikshita.agarwal@oss.qualcomm.com>
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
---
 drivers/media/platform/qcom/iris/iris_platform_common.h      | 1 +
 drivers/media/platform/qcom/iris/iris_platform_vpu2.c        | 4 ++++
 drivers/media/platform/qcom/iris/iris_platform_vpu3x.c       | 6 ++++++
 drivers/media/platform/qcom/iris/iris_vpu_common.c           | 8 +++++---
 drivers/media/platform/qcom/iris/iris_vpu_register_defines.h | 1 -
 5 files changed, 16 insertions(+), 4 deletions(-)

diff --git a/drivers/media/platform/qcom/iris/iris_platform_common.h b/drivers/media/platform/qcom/iris/iris_platform_common.h
index 7acb073f7197..51d8faf6fd1a 100644
--- a/drivers/media/platform/qcom/iris/iris_platform_common.h
+++ b/drivers/media/platform/qcom/iris/iris_platform_common.h
@@ -283,6 +283,7 @@ struct iris_platform_data {
 	u32 tz_cp_config_data_size;
 	u32 num_vpp_pipe;
 	bool no_aon;
+	u32 wd_intr_mask;
 	u32 max_session_count;
 	/* max number of macroblocks per frame supported */
 	u32 max_core_mbpf;
diff --git a/drivers/media/platform/qcom/iris/iris_platform_vpu2.c b/drivers/media/platform/qcom/iris/iris_platform_vpu2.c
index 961dce2e6aa9..eeef453c583f 100644
--- a/drivers/media/platform/qcom/iris/iris_platform_vpu2.c
+++ b/drivers/media/platform/qcom/iris/iris_platform_vpu2.c
@@ -16,6 +16,8 @@
 #include "iris_platform_sc7280.h"
 #include "iris_platform_sm8250.h"
 
+#define WRAPPER_INTR_STATUS_A2HWD_BMSK		BIT(3)
+
 static const struct iris_firmware_desc iris_vpu20_p1_gen1_desc = {
 	.firmware_data = &iris_hfi_gen1_data,
 	.get_vpu_buffer_size = iris_vpu_buf_size,
@@ -94,6 +96,7 @@ const struct iris_platform_data sc7280_data = {
 	.tz_cp_config_data_size = ARRAY_SIZE(tz_cp_config_vpu2),
 	.num_vpp_pipe = 1,
 	.no_aon = true,
+	.wd_intr_mask = WRAPPER_INTR_STATUS_A2HWD_BMSK,
 	.max_session_count = 16,
 	.max_core_mbpf = 4096 * 2176 / 256 * 2 + 1920 * 1088 / 256,
 	/* max spec for SC7280 is 4096x2176@60fps */
@@ -124,6 +127,7 @@ const struct iris_platform_data sm8250_data = {
 	.tz_cp_config_data = tz_cp_config_vpu2,
 	.tz_cp_config_data_size = ARRAY_SIZE(tz_cp_config_vpu2),
 	.num_vpp_pipe = 4,
+	.wd_intr_mask = WRAPPER_INTR_STATUS_A2HWD_BMSK,
 	.max_session_count = 16,
 	.max_core_mbpf = NUM_MBS_8K,
 	.max_core_mbps = ((7680 * 4320) / 256) * 60,
diff --git a/drivers/media/platform/qcom/iris/iris_platform_vpu3x.c b/drivers/media/platform/qcom/iris/iris_platform_vpu3x.c
index 9a76149f37b7..5fbaff5c01ca 100644
--- a/drivers/media/platform/qcom/iris/iris_platform_vpu3x.c
+++ b/drivers/media/platform/qcom/iris/iris_platform_vpu3x.c
@@ -17,6 +17,8 @@
 #include "iris_platform_sm8650.h"
 #include "iris_platform_sm8750.h"
 
+#define WRAPPER_INTR_STATUS_A2HWD_BMSK		BIT(3)
+
 static const struct iris_firmware_desc iris_vpu30_p4_s6_gen2_desc = {
 	.firmware_data = &iris_hfi_gen2_data,
 	.get_vpu_buffer_size = iris_vpu_buf_size,
@@ -106,6 +108,7 @@ const struct iris_platform_data qcs8300_data = {
 	.tz_cp_config_data = tz_cp_config_vpu3,
 	.tz_cp_config_data_size = ARRAY_SIZE(tz_cp_config_vpu3),
 	.num_vpp_pipe = 2,
+	.wd_intr_mask = WRAPPER_INTR_STATUS_A2HWD_BMSK,
 	.max_session_count = 16,
 	.max_core_mbpf = ((4096 * 2176) / 256) * 4,
 	.max_core_mbps = (((3840 * 2176) / 256) * 120),
@@ -135,6 +138,7 @@ const struct iris_platform_data sm8550_data = {
 	.tz_cp_config_data = tz_cp_config_vpu3,
 	.tz_cp_config_data_size = ARRAY_SIZE(tz_cp_config_vpu3),
 	.num_vpp_pipe = 4,
+	.wd_intr_mask = WRAPPER_INTR_STATUS_A2HWD_BMSK,
 	.max_session_count = 16,
 	.max_core_mbpf = NUM_MBS_8K * 2,
 	.max_core_mbps = ((7680 * 4320) / 256) * 60,
@@ -172,6 +176,7 @@ const struct iris_platform_data sm8650_data = {
 	.tz_cp_config_data = tz_cp_config_vpu3,
 	.tz_cp_config_data_size = ARRAY_SIZE(tz_cp_config_vpu3),
 	.num_vpp_pipe = 4,
+	.wd_intr_mask = WRAPPER_INTR_STATUS_A2HWD_BMSK,
 	.max_session_count = 16,
 	.max_core_mbpf = NUM_MBS_8K * 2,
 	.max_core_mbps = ((7680 * 4320) / 256) * 60,
@@ -201,6 +206,7 @@ const struct iris_platform_data sm8750_data = {
 	.tz_cp_config_data = tz_cp_config_vpu3,
 	.tz_cp_config_data_size = ARRAY_SIZE(tz_cp_config_vpu3),
 	.num_vpp_pipe = 4,
+	.wd_intr_mask = WRAPPER_INTR_STATUS_A2HWD_BMSK,
 	.max_session_count = 16,
 	.max_core_mbpf = NUM_MBS_8K * 2,
 	.max_core_mbps = ((7680 * 4320) / 256) * 60,
diff --git a/drivers/media/platform/qcom/iris/iris_vpu_common.c b/drivers/media/platform/qcom/iris/iris_vpu_common.c
index 59e4d68d042f..b8300195a43b 100644
--- a/drivers/media/platform/qcom/iris/iris_vpu_common.c
+++ b/drivers/media/platform/qcom/iris/iris_vpu_common.c
@@ -109,11 +109,11 @@ void iris_vpu_raise_interrupt(struct iris_core *core)
 
 void iris_vpu_clear_interrupt(struct iris_core *core)
 {
+	u32 wd_intr_mask = core->iris_platform_data->wd_intr_mask;
 	u32 intr_status, mask;
 
 	intr_status = readl(core->reg_base + WRAPPER_INTR_STATUS);
-	mask = (WRAPPER_INTR_STATUS_A2H_BMSK |
-		WRAPPER_INTR_STATUS_A2HWD_BMSK |
+	mask = (WRAPPER_INTR_STATUS_A2H_BMSK | wd_intr_mask |
 		CTRL_INIT_IDLE_MSG_BMSK);
 
 	if (intr_status & mask)
@@ -124,7 +124,9 @@ void iris_vpu_clear_interrupt(struct iris_core *core)
 
 int iris_vpu_watchdog(struct iris_core *core, u32 intr_status)
 {
-	if (intr_status & WRAPPER_INTR_STATUS_A2HWD_BMSK) {
+	u32 wd_intr_mask = core->iris_platform_data->wd_intr_mask;
+
+	if (intr_status & wd_intr_mask) {
 		dev_err(core->dev, "received watchdog interrupt\n");
 		return -ETIME;
 	}
diff --git a/drivers/media/platform/qcom/iris/iris_vpu_register_defines.h b/drivers/media/platform/qcom/iris/iris_vpu_register_defines.h
index 72168b9ffa73..4fffa094c52f 100644
--- a/drivers/media/platform/qcom/iris/iris_vpu_register_defines.h
+++ b/drivers/media/platform/qcom/iris/iris_vpu_register_defines.h
@@ -41,7 +41,6 @@
 #define MSK_CORE_POWER_ON			BIT(1)
 
 #define WRAPPER_INTR_STATUS			(WRAPPER_BASE_OFFS + 0x0C)
-#define WRAPPER_INTR_STATUS_A2HWD_BMSK		BIT(3)
 #define WRAPPER_INTR_STATUS_A2H_BMSK		BIT(2)
 
 #define WRAPPER_INTR_MASK			(WRAPPER_BASE_OFFS + 0x10)

-- 
2.47.3


^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [PATCH v2 07/16] media: iris: Add platform flag for instantaneous bandwidth voting
  2026-05-13 12:45 [PATCH v2 00/16] media: iris: Add AR50LT core support and enable Agatti platform Dmitry Baryshkov
                   ` (5 preceding siblings ...)
  2026-05-13 12:45 ` [PATCH v2 06/16] media: iris: Add platform data field for watchdog interrupt mask Dmitry Baryshkov
@ 2026-05-13 12:45 ` Dmitry Baryshkov
  2026-05-13 12:45 ` [PATCH v2 08/16] media: iris: skip PIPE if it is not supported by the platform Dmitry Baryshkov
                   ` (9 subsequent siblings)
  16 siblings, 0 replies; 19+ messages in thread
From: Dmitry Baryshkov @ 2026-05-13 12:45 UTC (permalink / raw)
  To: Vikash Garodia, Abhinav Kumar, Bryan O'Donoghue,
	Mauro Carvalho Chehab, Bjorn Andersson, Konrad Dybcio,
	Rob Herring, Krzysztof Kozlowski, Conor Dooley, Vishnu Reddy
  Cc: linux-media, linux-arm-msm, linux-kernel, devicetree,
	Dikshita Agarwal

From: Dikshita Agarwal <dikshita.agarwal@oss.qualcomm.com>

AR50LT require explicit instantaneous bandwidth (IB) voting in addition
to average bandwidth (AB) when configuring interconnect QoS. This
requirement is due to QSB (Qualcomm System Bus) 128b to
QNS ( Qualcomm Network Switch) 256b conversion at video noc in AR50LT
which is not needed for other IRIS cores.

In preparation of adding support for AR50LT core, introduce
platform-configurable IB multiplier and enable IB voting for all SoCs.
Existing platforms default to IB == AB, while AR50LT requires 2x peak
bandwidth.

Signed-off-by: Dikshita Agarwal <dikshita.agarwal@oss.qualcomm.com>
Reviewed-by: Vikash Garodia <vikash.garodia@oss.qualcomm.com>
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
---
 drivers/media/platform/qcom/iris/iris_platform_common.h | 1 +
 drivers/media/platform/qcom/iris/iris_platform_vpu2.c   | 2 ++
 drivers/media/platform/qcom/iris/iris_platform_vpu3x.c  | 4 ++++
 drivers/media/platform/qcom/iris/iris_resources.c       | 2 ++
 4 files changed, 9 insertions(+)

diff --git a/drivers/media/platform/qcom/iris/iris_platform_common.h b/drivers/media/platform/qcom/iris/iris_platform_common.h
index 51d8faf6fd1a..e1dc226066c1 100644
--- a/drivers/media/platform/qcom/iris/iris_platform_common.h
+++ b/drivers/media/platform/qcom/iris/iris_platform_common.h
@@ -284,6 +284,7 @@ struct iris_platform_data {
 	u32 num_vpp_pipe;
 	bool no_aon;
 	u32 wd_intr_mask;
+	u32 icc_ib_multiplier;
 	u32 max_session_count;
 	/* max number of macroblocks per frame supported */
 	u32 max_core_mbpf;
diff --git a/drivers/media/platform/qcom/iris/iris_platform_vpu2.c b/drivers/media/platform/qcom/iris/iris_platform_vpu2.c
index eeef453c583f..e2fddc29abc7 100644
--- a/drivers/media/platform/qcom/iris/iris_platform_vpu2.c
+++ b/drivers/media/platform/qcom/iris/iris_platform_vpu2.c
@@ -97,6 +97,7 @@ const struct iris_platform_data sc7280_data = {
 	.num_vpp_pipe = 1,
 	.no_aon = true,
 	.wd_intr_mask = WRAPPER_INTR_STATUS_A2HWD_BMSK,
+	.icc_ib_multiplier = 1,
 	.max_session_count = 16,
 	.max_core_mbpf = 4096 * 2176 / 256 * 2 + 1920 * 1088 / 256,
 	/* max spec for SC7280 is 4096x2176@60fps */
@@ -128,6 +129,7 @@ const struct iris_platform_data sm8250_data = {
 	.tz_cp_config_data_size = ARRAY_SIZE(tz_cp_config_vpu2),
 	.num_vpp_pipe = 4,
 	.wd_intr_mask = WRAPPER_INTR_STATUS_A2HWD_BMSK,
+	.icc_ib_multiplier = 1,
 	.max_session_count = 16,
 	.max_core_mbpf = NUM_MBS_8K,
 	.max_core_mbps = ((7680 * 4320) / 256) * 60,
diff --git a/drivers/media/platform/qcom/iris/iris_platform_vpu3x.c b/drivers/media/platform/qcom/iris/iris_platform_vpu3x.c
index 5fbaff5c01ca..8c1c8b19fa99 100644
--- a/drivers/media/platform/qcom/iris/iris_platform_vpu3x.c
+++ b/drivers/media/platform/qcom/iris/iris_platform_vpu3x.c
@@ -109,6 +109,7 @@ const struct iris_platform_data qcs8300_data = {
 	.tz_cp_config_data_size = ARRAY_SIZE(tz_cp_config_vpu3),
 	.num_vpp_pipe = 2,
 	.wd_intr_mask = WRAPPER_INTR_STATUS_A2HWD_BMSK,
+	.icc_ib_multiplier = 1,
 	.max_session_count = 16,
 	.max_core_mbpf = ((4096 * 2176) / 256) * 4,
 	.max_core_mbps = (((3840 * 2176) / 256) * 120),
@@ -139,6 +140,7 @@ const struct iris_platform_data sm8550_data = {
 	.tz_cp_config_data_size = ARRAY_SIZE(tz_cp_config_vpu3),
 	.num_vpp_pipe = 4,
 	.wd_intr_mask = WRAPPER_INTR_STATUS_A2HWD_BMSK,
+	.icc_ib_multiplier = 1,
 	.max_session_count = 16,
 	.max_core_mbpf = NUM_MBS_8K * 2,
 	.max_core_mbps = ((7680 * 4320) / 256) * 60,
@@ -177,6 +179,7 @@ const struct iris_platform_data sm8650_data = {
 	.tz_cp_config_data_size = ARRAY_SIZE(tz_cp_config_vpu3),
 	.num_vpp_pipe = 4,
 	.wd_intr_mask = WRAPPER_INTR_STATUS_A2HWD_BMSK,
+	.icc_ib_multiplier = 1,
 	.max_session_count = 16,
 	.max_core_mbpf = NUM_MBS_8K * 2,
 	.max_core_mbps = ((7680 * 4320) / 256) * 60,
@@ -207,6 +210,7 @@ const struct iris_platform_data sm8750_data = {
 	.tz_cp_config_data_size = ARRAY_SIZE(tz_cp_config_vpu3),
 	.num_vpp_pipe = 4,
 	.wd_intr_mask = WRAPPER_INTR_STATUS_A2HWD_BMSK,
+	.icc_ib_multiplier = 1,
 	.max_session_count = 16,
 	.max_core_mbpf = NUM_MBS_8K * 2,
 	.max_core_mbps = ((7680 * 4320) / 256) * 60,
diff --git a/drivers/media/platform/qcom/iris/iris_resources.c b/drivers/media/platform/qcom/iris/iris_resources.c
index 773f6548370a..caeaf199cef7 100644
--- a/drivers/media/platform/qcom/iris/iris_resources.c
+++ b/drivers/media/platform/qcom/iris/iris_resources.c
@@ -18,6 +18,7 @@
 
 int iris_set_icc_bw(struct iris_core *core, unsigned long icc_bw)
 {
+	u32 icc_ib_multiplier = core->iris_platform_data->icc_ib_multiplier;
 	unsigned long bw_kbps = 0, bw_prev = 0;
 	const struct icc_info *icc_tbl;
 	int ret = 0, i;
@@ -36,6 +37,7 @@ int iris_set_icc_bw(struct iris_core *core, unsigned long icc_bw)
 				return ret;
 
 			core->icc_tbl[i].avg_bw = bw_kbps;
+			core->icc_tbl[i].peak_bw = bw_kbps * icc_ib_multiplier;
 
 			core->power.icc_bw = bw_kbps;
 			break;

-- 
2.47.3


^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [PATCH v2 08/16] media: iris: skip PIPE if it is not supported by the platform
  2026-05-13 12:45 [PATCH v2 00/16] media: iris: Add AR50LT core support and enable Agatti platform Dmitry Baryshkov
                   ` (6 preceding siblings ...)
  2026-05-13 12:45 ` [PATCH v2 07/16] media: iris: Add platform flag for instantaneous bandwidth voting Dmitry Baryshkov
@ 2026-05-13 12:45 ` Dmitry Baryshkov
  2026-05-13 12:45 ` [PATCH v2 09/16] media: iris: Add framework support for AR50_LITE video core Dmitry Baryshkov
                   ` (8 subsequent siblings)
  16 siblings, 0 replies; 19+ messages in thread
From: Dmitry Baryshkov @ 2026-05-13 12:45 UTC (permalink / raw)
  To: Vikash Garodia, Abhinav Kumar, Bryan O'Donoghue,
	Mauro Carvalho Chehab, Bjorn Andersson, Konrad Dybcio,
	Rob Herring, Krzysztof Kozlowski, Conor Dooley, Vishnu Reddy
  Cc: linux-media, linux-arm-msm, linux-kernel, devicetree,
	Dikshita Agarwal

AR50Lt doesn't support HFI_PROPERTY_PARAM_WORK_ROUTE. Tables for AR50LT
won't have corresponding entry in the capability tables. Let
iris_set_pipe() silently skip propgramming the property if there is no
corresponding capability.

Reviewed-by: Vishnu Reddy <busanna.reddy@oss.qualcomm.com>
Reviewed-by: Vikash Garodia <vikash.garodia@oss.qualcomm.com>
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
---
 drivers/media/platform/qcom/iris/iris_ctrls.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/drivers/media/platform/qcom/iris/iris_ctrls.c b/drivers/media/platform/qcom/iris/iris_ctrls.c
index ef7adac3764d..f438dddc19ba 100644
--- a/drivers/media/platform/qcom/iris/iris_ctrls.c
+++ b/drivers/media/platform/qcom/iris/iris_ctrls.c
@@ -450,6 +450,9 @@ int iris_set_pipe(struct iris_inst *inst, enum platform_inst_fw_cap_type cap_id)
 	u32 work_route = inst->fw_caps[PIPE].value;
 	u32 hfi_id = inst->fw_caps[cap_id].hfi_id;
 
+	if (!hfi_id)
+		return 0;
+
 	return hfi_ops->session_set_property(inst, hfi_id,
 					     HFI_HOST_FLAGS_NONE,
 					     iris_get_port_info(inst, cap_id),

-- 
2.47.3


^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [PATCH v2 09/16] media: iris: Add framework support for AR50_LITE video core
  2026-05-13 12:45 [PATCH v2 00/16] media: iris: Add AR50LT core support and enable Agatti platform Dmitry Baryshkov
                   ` (7 preceding siblings ...)
  2026-05-13 12:45 ` [PATCH v2 08/16] media: iris: skip PIPE if it is not supported by the platform Dmitry Baryshkov
@ 2026-05-13 12:45 ` Dmitry Baryshkov
  2026-05-13 12:45 ` [PATCH v2 10/16] media: iris: add minimal GET_PROPERTY implementation Dmitry Baryshkov
                   ` (7 subsequent siblings)
  16 siblings, 0 replies; 19+ messages in thread
From: Dmitry Baryshkov @ 2026-05-13 12:45 UTC (permalink / raw)
  To: Vikash Garodia, Abhinav Kumar, Bryan O'Donoghue,
	Mauro Carvalho Chehab, Bjorn Andersson, Konrad Dybcio,
	Rob Herring, Krzysztof Kozlowski, Conor Dooley, Vishnu Reddy
  Cc: linux-media, linux-arm-msm, linux-kernel, devicetree,
	Dikshita Agarwal

From: Dikshita Agarwal <dikshita.agarwal@oss.qualcomm.com>

Add power sequence for ar5lt core.
Add register handling for ar50lt by hooking up vpu op with ar50lt
specific implemtation or resue from earlier generation wherever
feasible.

Signed-off-by: Dikshita Agarwal <dikshita.agarwal@oss.qualcomm.com>
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
---
 drivers/media/platform/qcom/iris/Makefile          |   1 +
 .../platform/qcom/iris/iris_platform_common.h      |   2 +
 drivers/media/platform/qcom/iris/iris_vpu_ar50lt.c | 156 +++++++++++++++++++++
 drivers/media/platform/qcom/iris/iris_vpu_common.c |   3 +-
 drivers/media/platform/qcom/iris/iris_vpu_common.h |   1 +
 5 files changed, 162 insertions(+), 1 deletion(-)

diff --git a/drivers/media/platform/qcom/iris/Makefile b/drivers/media/platform/qcom/iris/Makefile
index 48e415cbc439..f1b204b95694 100644
--- a/drivers/media/platform/qcom/iris/Makefile
+++ b/drivers/media/platform/qcom/iris/Makefile
@@ -26,6 +26,7 @@ qcom-iris-objs += iris_buffer.o \
              iris_vpu2.o \
              iris_vpu3x.o \
              iris_vpu4x.o \
+             iris_vpu_ar50lt.o \
              iris_vpu_buffer.o \
              iris_vpu_common.o \
 
diff --git a/drivers/media/platform/qcom/iris/iris_platform_common.h b/drivers/media/platform/qcom/iris/iris_platform_common.h
index e1dc226066c1..4a0895bf5720 100644
--- a/drivers/media/platform/qcom/iris/iris_platform_common.h
+++ b/drivers/media/platform/qcom/iris/iris_platform_common.h
@@ -63,6 +63,7 @@ enum platform_clk_type {
 	IRIS_VPP0_HW_CLK,
 	IRIS_VPP1_HW_CLK,
 	IRIS_APV_HW_CLK,
+	IRIS_THROTTLE_CLK,
 };
 
 struct platform_clk_data {
@@ -283,6 +284,7 @@ struct iris_platform_data {
 	u32 tz_cp_config_data_size;
 	u32 num_vpp_pipe;
 	bool no_aon;
+	bool no_rpmh;
 	u32 wd_intr_mask;
 	u32 icc_ib_multiplier;
 	u32 max_session_count;
diff --git a/drivers/media/platform/qcom/iris/iris_vpu_ar50lt.c b/drivers/media/platform/qcom/iris/iris_vpu_ar50lt.c
new file mode 100644
index 000000000000..1af20b067c03
--- /dev/null
+++ b/drivers/media/platform/qcom/iris/iris_vpu_ar50lt.c
@@ -0,0 +1,156 @@
+// SPDX-License-Identifier: GPL-2.0-only
+/*
+ * Copyright (c) 2026 Qualcomm Innovation Center, Inc. All rights reserved.
+ */
+
+#include <linux/bits.h>
+#include <linux/iopoll.h>
+#include <linux/reset.h>
+
+#include "iris_instance.h"
+#include "iris_vpu_common.h"
+
+#include "iris_vpu_register_defines.h"
+
+#define WRAPPER_INTR_MASK_A2HVCODEC_BMSK_AR50LT BIT(3)
+
+#define WRAPPER_VCODEC0_CLOCK_CONFIG_AR50LT		0xb0080
+
+#define CPU_CS_VCICMD					0xa0020
+#define CPU_CS_VCICMD_ARP_OFF			0x1
+
+static void iris_vpu_ar50lt_set_preset_registers(struct iris_core *core)
+{
+	writel(0x0, core->reg_base + WRAPPER_VCODEC0_CLOCK_CONFIG_AR50LT);
+}
+
+static void iris_vpu_ar50lt_interrupt_init(struct iris_core *core)
+{
+	writel(WRAPPER_INTR_MASK_A2HVCODEC_BMSK_AR50LT, core->reg_base + WRAPPER_INTR_MASK);
+}
+
+static void iris_vpu_ar50lt_disable_arp(struct iris_core *core)
+{
+	writel(CPU_CS_VCICMD_ARP_OFF, core->reg_base + CPU_CS_VCICMD);
+}
+
+static int iris_vpu_ar50lt_power_off_controller(struct iris_core *core)
+{
+	iris_disable_unprepare_clock(core, IRIS_AHB_CLK);
+	iris_disable_unprepare_clock(core, IRIS_AXI_CLK);
+	iris_disable_unprepare_clock(core, IRIS_CTRL_CLK);
+	iris_disable_power_domains(core, core->pmdomain_tbl->pd_devs[IRIS_CTRL_POWER_DOMAIN]);
+
+	return 0;
+}
+
+static void iris_vpu_ar50lt_power_off_hw(struct iris_core *core)
+{
+	dev_pm_genpd_set_hwmode(core->pmdomain_tbl->pd_devs[IRIS_HW_POWER_DOMAIN], false);
+	iris_disable_unprepare_clock(core, IRIS_THROTTLE_CLK);
+	iris_disable_unprepare_clock(core, IRIS_HW_AHB_CLK);
+	iris_disable_unprepare_clock(core, IRIS_HW_CLK);
+	iris_disable_power_domains(core, core->pmdomain_tbl->pd_devs[IRIS_HW_POWER_DOMAIN]);
+}
+
+static int iris_vpu_ar50lt_power_on_controller(struct iris_core *core)
+{
+	int ret;
+
+	ret = iris_enable_power_domains(core, core->pmdomain_tbl->pd_devs[IRIS_CTRL_POWER_DOMAIN]);
+	if (ret)
+		return ret;
+
+	ret = iris_prepare_enable_clock(core, IRIS_CTRL_CLK);
+	if (ret)
+		goto err_disable_power;
+
+	ret = iris_prepare_enable_clock(core, IRIS_AXI_CLK);
+	if (ret && ret != -ENOENT)
+		goto err_disable_ctrl_clock;
+
+	ret = iris_prepare_enable_clock(core, IRIS_AHB_CLK);
+	if (ret)
+		goto err_disable_axi_clock;
+
+	return 0;
+
+err_disable_axi_clock:
+	iris_disable_unprepare_clock(core, IRIS_AXI_CLK);
+err_disable_ctrl_clock:
+	iris_disable_unprepare_clock(core, IRIS_CTRL_CLK);
+err_disable_power:
+	iris_disable_power_domains(core, core->pmdomain_tbl->pd_devs[IRIS_CTRL_POWER_DOMAIN]);
+
+	return ret;
+}
+
+static int iris_vpu_ar50lt_power_on_hw(struct iris_core *core)
+{
+	int ret;
+
+	ret = iris_enable_power_domains(core, core->pmdomain_tbl->pd_devs[IRIS_HW_POWER_DOMAIN]);
+	if (ret)
+		return ret;
+
+	ret = iris_prepare_enable_clock(core, IRIS_HW_CLK);
+	if (ret)
+		goto err_disable_power;
+
+	ret = iris_prepare_enable_clock(core, IRIS_HW_AHB_CLK);
+	if (ret)
+		goto err_disable_hw_clock;
+
+	ret = iris_prepare_enable_clock(core, IRIS_THROTTLE_CLK);
+	if (ret)
+		goto err_disable_hw_ahb_clock;
+
+	return 0;
+
+err_disable_hw_ahb_clock:
+	iris_disable_unprepare_clock(core, IRIS_HW_AHB_CLK);
+err_disable_hw_clock:
+	iris_disable_unprepare_clock(core, IRIS_HW_CLK);
+err_disable_power:
+	iris_disable_power_domains(core, core->pmdomain_tbl->pd_devs[IRIS_HW_POWER_DOMAIN]);
+
+	return ret;
+}
+
+static u64 iris_vpu_ar50lt_calc_freq(struct iris_inst *inst, size_t data_size)
+{
+	struct platform_inst_caps *caps = inst->core->iris_platform_data->inst_caps;
+	struct v4l2_format *inp_f = inst->fmt_src;
+	u32 mbs_per_second, mbpf, height, width;
+	unsigned long vpp_freq, vsp_freq;
+	u32 fps = DEFAULT_FPS;
+
+	width = max(inp_f->fmt.pix_mp.width, inst->crop.width);
+	height = max(inp_f->fmt.pix_mp.height, inst->crop.height);
+
+	mbpf = NUM_MBS_PER_FRAME(height, width);
+	mbs_per_second = mbpf * fps;
+
+	vpp_freq = mbs_per_second * caps->mb_cycles_vpp;
+
+	/* 21 / 20 is overhead factor */
+	vpp_freq += vpp_freq / 20;
+	vsp_freq = mbs_per_second * caps->mb_cycles_vsp;
+
+	/* 10 / 7 is overhead factor */
+	vsp_freq += ((fps * data_size * 8) * 10) / 7;
+
+	return max(vpp_freq, vsp_freq);
+}
+
+const struct vpu_ops iris_vpu_ar50lt_ops = {
+	.power_off_hw = iris_vpu_ar50lt_power_off_hw,
+	.power_on_hw = iris_vpu_ar50lt_power_on_hw,
+	.power_off_controller = iris_vpu_ar50lt_power_off_controller,
+	.power_on_controller = iris_vpu_ar50lt_power_on_controller,
+	.calc_freq = iris_vpu_ar50lt_calc_freq,
+	.set_hwmode = iris_vpu_set_hwmode,
+	.set_preset_registers = iris_vpu_ar50lt_set_preset_registers,
+	.interrupt_init = iris_vpu_ar50lt_interrupt_init,
+	.disable_arp = iris_vpu_ar50lt_disable_arp,
+};
diff --git a/drivers/media/platform/qcom/iris/iris_vpu_common.c b/drivers/media/platform/qcom/iris/iris_vpu_common.c
index b8300195a43b..f3607c0ca847 100644
--- a/drivers/media/platform/qcom/iris/iris_vpu_common.c
+++ b/drivers/media/platform/qcom/iris/iris_vpu_common.c
@@ -97,7 +97,8 @@ int iris_vpu_boot_firmware(struct iris_core *core)
 	}
 
 	writel(HOST2XTENSA_INTR_ENABLE, core->reg_base + CPU_CS_H2XSOFTINTEN);
-	writel(0x0, core->reg_base + CPU_CS_X2RPMH);
+	if (!core->iris_platform_data->no_rpmh)
+		writel(0x0, core->reg_base + CPU_CS_X2RPMH);
 
 	return 0;
 }
diff --git a/drivers/media/platform/qcom/iris/iris_vpu_common.h b/drivers/media/platform/qcom/iris/iris_vpu_common.h
index 71d96921ed37..f00e2de5fa53 100644
--- a/drivers/media/platform/qcom/iris/iris_vpu_common.h
+++ b/drivers/media/platform/qcom/iris/iris_vpu_common.h
@@ -13,6 +13,7 @@ extern const struct vpu_ops iris_vpu3_ops;
 extern const struct vpu_ops iris_vpu33_ops;
 extern const struct vpu_ops iris_vpu35_ops;
 extern const struct vpu_ops iris_vpu4x_ops;
+extern const struct vpu_ops iris_vpu_ar50lt_ops;
 
 struct vpu_ops {
 	void (*power_off_hw)(struct iris_core *core);

-- 
2.47.3


^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [PATCH v2 10/16] media: iris: add minimal GET_PROPERTY implementation
  2026-05-13 12:45 [PATCH v2 00/16] media: iris: Add AR50LT core support and enable Agatti platform Dmitry Baryshkov
                   ` (8 preceding siblings ...)
  2026-05-13 12:45 ` [PATCH v2 09/16] media: iris: Add framework support for AR50_LITE video core Dmitry Baryshkov
@ 2026-05-13 12:45 ` Dmitry Baryshkov
  2026-05-13 12:45 ` [PATCH v2 11/16] media: iris: update buffer requirements based on received info Dmitry Baryshkov
                   ` (6 subsequent siblings)
  16 siblings, 0 replies; 19+ messages in thread
From: Dmitry Baryshkov @ 2026-05-13 12:45 UTC (permalink / raw)
  To: Vikash Garodia, Abhinav Kumar, Bryan O'Donoghue,
	Mauro Carvalho Chehab, Bjorn Andersson, Konrad Dybcio,
	Rob Herring, Krzysztof Kozlowski, Conor Dooley, Vishnu Reddy
  Cc: linux-media, linux-arm-msm, linux-kernel, devicetree,
	Dikshita Agarwal

AR50Lt with the Gen1 firmware requires host to read
HFI_PROPERTY_CONFIG_BUFFER_REQUIREMENTS property, otherwie it doesn't
update internal data and fails the HFI_CMD_SESSION_LOAD_RESOURCES
command. Implement minimal support for querying the properties from the
firmware.

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
---
 drivers/media/platform/qcom/iris/iris_hfi_common.h  |  1 +
 .../platform/qcom/iris/iris_hfi_gen1_command.c      | 21 +++++++++++++++++++++
 .../platform/qcom/iris/iris_hfi_gen1_defines.h      | 15 +++++++++++++++
 .../platform/qcom/iris/iris_hfi_gen1_response.c     |  6 ++++++
 4 files changed, 43 insertions(+)

diff --git a/drivers/media/platform/qcom/iris/iris_hfi_common.h b/drivers/media/platform/qcom/iris/iris_hfi_common.h
index a27447eb2519..16099f9a25b6 100644
--- a/drivers/media/platform/qcom/iris/iris_hfi_common.h
+++ b/drivers/media/platform/qcom/iris/iris_hfi_common.h
@@ -121,6 +121,7 @@ struct iris_hfi_session_ops {
 	int (*session_set_property)(struct iris_inst *inst,
 				    u32 packet_type, u32 flag, u32 plane, u32 payload_type,
 				    void *payload, u32 payload_size);
+	int (*session_get_property)(struct iris_inst *inst, u32 packet_type);
 	int (*session_open)(struct iris_inst *inst);
 	int (*session_start)(struct iris_inst *inst, u32 plane);
 	int (*session_queue_buf)(struct iris_inst *inst, struct iris_buffer *buffer);
diff --git a/drivers/media/platform/qcom/iris/iris_hfi_gen1_command.c b/drivers/media/platform/qcom/iris/iris_hfi_gen1_command.c
index 83373862655f..4e17fa3c602f 100644
--- a/drivers/media/platform/qcom/iris/iris_hfi_gen1_command.c
+++ b/drivers/media/platform/qcom/iris/iris_hfi_gen1_command.c
@@ -1063,10 +1063,31 @@ static int iris_hfi_gen1_session_set_config_params(struct iris_inst *inst, u32 p
 	return 0;
 }
 
+static int iris_hfi_gen1_session_get_property(struct iris_inst *inst, u32 packet_type)
+{
+	struct hfi_session_get_property_pkt pkt;
+	int ret;
+
+	pkt.shdr.hdr.size = sizeof(pkt);
+	pkt.shdr.hdr.pkt_type = HFI_CMD_SESSION_GET_PROPERTY;
+	pkt.shdr.session_id = inst->session_id;
+	pkt.num_properties = 1;
+	pkt.data = packet_type;
+
+	reinit_completion(&inst->completion);
+
+	ret = iris_hfi_queue_cmd_write(inst->core, &pkt, pkt.shdr.hdr.size);
+	if (ret)
+		return ret;
+
+	return iris_wait_for_session_response(inst, false);
+}
+
 static const struct iris_hfi_session_ops iris_hfi_gen1_session_ops = {
 	.session_open = iris_hfi_gen1_session_open,
 	.session_set_config_params = iris_hfi_gen1_session_set_config_params,
 	.session_set_property = iris_hfi_gen1_session_set_property,
+	.session_get_property = iris_hfi_gen1_session_get_property,
 	.session_start = iris_hfi_gen1_session_start,
 	.session_queue_buf = iris_hfi_gen1_session_queue_buffer,
 	.session_release_buf = iris_hfi_gen1_session_unset_buffers,
diff --git a/drivers/media/platform/qcom/iris/iris_hfi_gen1_defines.h b/drivers/media/platform/qcom/iris/iris_hfi_gen1_defines.h
index 42226ccee3d9..1b770e830c58 100644
--- a/drivers/media/platform/qcom/iris/iris_hfi_gen1_defines.h
+++ b/drivers/media/platform/qcom/iris/iris_hfi_gen1_defines.h
@@ -35,6 +35,7 @@
 #define HFI_CMD_SESSION_EMPTY_BUFFER			0x211004
 #define HFI_CMD_SESSION_FILL_BUFFER			0x211005
 #define HFI_CMD_SESSION_FLUSH				0x211008
+#define HFI_CMD_SESSION_GET_PROPERTY			0x211009
 #define HFI_CMD_SESSION_RELEASE_BUFFERS			0x21100b
 #define HFI_CMD_SESSION_RELEASE_RESOURCES		0x21100c
 #define HFI_CMD_SESSION_CONTINUE			0x21100d
@@ -113,6 +114,7 @@
 #define HFI_MSG_SESSION_FLUSH				0x221006
 #define HFI_MSG_SESSION_EMPTY_BUFFER			0x221007
 #define HFI_MSG_SESSION_FILL_BUFFER			0x221008
+#define HFI_MSG_SESSION_PROPERTY_INFO			0x221009
 #define HFI_MSG_SESSION_RELEASE_RESOURCES		0x22100a
 #define HFI_MSG_SESSION_RELEASE_BUFFERS			0x22100c
 
@@ -186,6 +188,12 @@ struct hfi_session_set_property_pkt {
 	u32 data[];
 };
 
+struct hfi_session_get_property_pkt {
+	struct hfi_session_hdr_pkt shdr;
+	u32 num_properties;
+	u32 data;
+};
+
 struct hfi_sys_pc_prep_pkt {
 	struct hfi_pkt_hdr hdr;
 };
@@ -525,6 +533,13 @@ struct hfi_msg_session_fbd_uncompressed_plane0_pkt {
 	u32 data[];
 };
 
+struct hfi_msg_session_property_info_pkt {
+	struct hfi_session_hdr_pkt shdr;
+	u32 num_properties;
+	u32 property;
+	u8 data[];
+};
+
 struct hfi_msg_session_release_buffers_done_pkt {
 	struct hfi_msg_session_hdr_pkt shdr;
 	u32 num_buffers;
diff --git a/drivers/media/platform/qcom/iris/iris_hfi_gen1_response.c b/drivers/media/platform/qcom/iris/iris_hfi_gen1_response.c
index bfd7495bf44f..23fc7194b1e3 100644
--- a/drivers/media/platform/qcom/iris/iris_hfi_gen1_response.c
+++ b/drivers/media/platform/qcom/iris/iris_hfi_gen1_response.c
@@ -591,6 +591,10 @@ static const struct iris_hfi_gen1_response_pkt_info pkt_infos[] = {
 	 .pkt = HFI_MSG_SESSION_RELEASE_BUFFERS,
 	 .pkt_sz = sizeof(struct hfi_msg_session_release_buffers_done_pkt),
 	},
+	{
+	 .pkt = HFI_MSG_SESSION_PROPERTY_INFO,
+	 .pkt_sz = sizeof(struct hfi_msg_session_property_info_pkt),
+	},
 };
 
 static void iris_hfi_gen1_handle_response(struct iris_core *core, void *response)
@@ -652,6 +656,8 @@ static void iris_hfi_gen1_handle_response(struct iris_core *core, void *response
 			iris_hfi_gen1_session_etb_done(inst, hdr);
 		} else if (hdr->pkt_type == HFI_MSG_SESSION_FILL_BUFFER) {
 			iris_hfi_gen1_session_ftb_done(inst, hdr);
+		} else if (hdr->pkt_type == HFI_MSG_SESSION_PROPERTY_INFO) {
+			complete(&inst->completion);
 		} else {
 			struct hfi_msg_session_hdr_pkt *shdr;
 

-- 
2.47.3


^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [PATCH v2 11/16] media: iris: update buffer requirements based on received info
  2026-05-13 12:45 [PATCH v2 00/16] media: iris: Add AR50LT core support and enable Agatti platform Dmitry Baryshkov
                   ` (9 preceding siblings ...)
  2026-05-13 12:45 ` [PATCH v2 10/16] media: iris: add minimal GET_PROPERTY implementation Dmitry Baryshkov
@ 2026-05-13 12:45 ` Dmitry Baryshkov
  2026-05-13 12:45 ` [PATCH v2 12/16] media: iris: implement support for the Agatti platform Dmitry Baryshkov
                   ` (5 subsequent siblings)
  16 siblings, 0 replies; 19+ messages in thread
From: Dmitry Baryshkov @ 2026-05-13 12:45 UTC (permalink / raw)
  To: Vikash Garodia, Abhinav Kumar, Bryan O'Donoghue,
	Mauro Carvalho Chehab, Bjorn Andersson, Konrad Dybcio,
	Rob Herring, Krzysztof Kozlowski, Conor Dooley, Vishnu Reddy
  Cc: linux-media, linux-arm-msm, linux-kernel, devicetree,
	Dikshita Agarwal

Upon receiving data for HFI_PROPERTY_CONFIG_BUFFER_REQUIREMENTS the
driver should update buffer sizes and counts from the received data.
Implement corresponding functionality updating buffers data. This will
be used for upcoming support of AR50Lt platforms with Gen1 firmware.

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
---
 .../platform/qcom/iris/iris_hfi_gen1_response.c    | 74 +++++++++++++++++++++-
 1 file changed, 73 insertions(+), 1 deletion(-)

diff --git a/drivers/media/platform/qcom/iris/iris_hfi_gen1_response.c b/drivers/media/platform/qcom/iris/iris_hfi_gen1_response.c
index 23fc7194b1e3..ee996eb1f41f 100644
--- a/drivers/media/platform/qcom/iris/iris_hfi_gen1_response.c
+++ b/drivers/media/platform/qcom/iris/iris_hfi_gen1_response.c
@@ -533,6 +533,78 @@ static void iris_hfi_gen1_session_ftb_done(struct iris_inst *inst, void *packet)
 	dev_err(core->dev, "error in ftb done\n");
 }
 
+static enum iris_buffer_type iris_hfi_gen1_buf_type(struct iris_inst *inst, u32 type)
+{
+	switch (type) {
+	case HFI_BUFFER_INPUT:
+		return BUF_INPUT;
+	case HFI_BUFFER_OUTPUT:
+		if (iris_split_mode_enabled(inst))
+			return BUF_DPB;
+		return BUF_OUTPUT;
+	case HFI_BUFFER_OUTPUT2:
+		if (iris_split_mode_enabled(inst))
+			return BUF_OUTPUT;
+		return BUF_DPB;
+	case HFI_BUFFER_INTERNAL_PERSIST_1:
+		return BUF_PERSIST;
+	case HFI_BUFFER_INTERNAL_SCRATCH:
+		return BUF_BIN;
+	case HFI_BUFFER_INTERNAL_SCRATCH_1:
+		return BUF_SCRATCH_1;
+	case HFI_BUFFER_INTERNAL_SCRATCH_2:
+		return BUF_SCRATCH_2;
+	case HFI_BUFFER_INTERNAL_PERSIST:
+		return BUF_ARP;
+	default:
+		return -EINVAL;
+	}
+}
+
+static void iris_hfi_gen1_session_buffer_requirements(struct iris_inst *inst,
+						      void *data, size_t size)
+{
+	struct hfi_buffer_requirements *req;
+
+	if (!size || size % sizeof(*req))
+		return;
+
+	for (req = data; size; size -= sizeof(*req), req++) {
+		enum iris_buffer_type type = iris_hfi_gen1_buf_type(inst, req->type);
+
+		if (type == -EINVAL)
+			continue;
+
+		inst->buffers[type].min_count = req->hold_count;
+		inst->buffers[type].size = req->size;
+
+		if (type == BUF_OUTPUT)
+			inst->fw_min_count = req->count_actual;
+	}
+}
+
+static void iris_hfi_gen1_session_property_info(struct iris_inst *inst, void *packet)
+{
+	struct hfi_msg_session_property_info_pkt *pkt = packet;
+
+	if (!pkt->num_properties) {
+		dev_err(inst->core->dev, "error, no properties\n");
+		goto out;
+	}
+
+	switch (pkt->property) {
+	case HFI_PROPERTY_CONFIG_BUFFER_REQUIREMENTS:
+		iris_hfi_gen1_session_buffer_requirements(inst, pkt->data,
+							  pkt->shdr.hdr.size - sizeof(*pkt));
+		break;
+	default:
+		dev_warn(inst->core->dev, "unknown property id: %x\n", pkt->property);
+	}
+
+out:
+	complete(&inst->completion);
+}
+
 struct iris_hfi_gen1_response_pkt_info {
 	u32 pkt;
 	u32 pkt_sz;
@@ -657,7 +729,7 @@ static void iris_hfi_gen1_handle_response(struct iris_core *core, void *response
 		} else if (hdr->pkt_type == HFI_MSG_SESSION_FILL_BUFFER) {
 			iris_hfi_gen1_session_ftb_done(inst, hdr);
 		} else if (hdr->pkt_type == HFI_MSG_SESSION_PROPERTY_INFO) {
-			complete(&inst->completion);
+			iris_hfi_gen1_session_property_info(inst, hdr);
 		} else {
 			struct hfi_msg_session_hdr_pkt *shdr;
 

-- 
2.47.3


^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [PATCH v2 12/16] media: iris: implement support for the Agatti platform
  2026-05-13 12:45 [PATCH v2 00/16] media: iris: Add AR50LT core support and enable Agatti platform Dmitry Baryshkov
                   ` (10 preceding siblings ...)
  2026-05-13 12:45 ` [PATCH v2 11/16] media: iris: update buffer requirements based on received info Dmitry Baryshkov
@ 2026-05-13 12:45 ` Dmitry Baryshkov
  2026-05-13 12:45 ` [PATCH v2 13/16] media: iris: Introduce buffer size calculations for AR50LT Dmitry Baryshkov
                   ` (4 subsequent siblings)
  16 siblings, 0 replies; 19+ messages in thread
From: Dmitry Baryshkov @ 2026-05-13 12:45 UTC (permalink / raw)
  To: Vikash Garodia, Abhinav Kumar, Bryan O'Donoghue,
	Mauro Carvalho Chehab, Bjorn Andersson, Konrad Dybcio,
	Rob Herring, Krzysztof Kozlowski, Conor Dooley, Vishnu Reddy
  Cc: linux-media, linux-arm-msm, linux-kernel, devicetree,
	Dikshita Agarwal

Port support for the AR50Lt video codec core (present for example on the
Agatti platform) to the Iris driver. Unlike more recent cores this
generation doesn't have the PIPE property (as it always has only one
pipe). Also, unlike newer platforms, buffer sizes are requested from the
firmware instead of being calculated by the driver.

Co-developed-by: Dikshita Agarwal <dikshita.agarwal@oss.qualcomm.com>
Signed-off-by: Dikshita Agarwal <dikshita.agarwal@oss.qualcomm.com>
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
---
 drivers/media/platform/qcom/iris/Makefile          |   1 +
 drivers/media/platform/qcom/iris/iris_hfi_gen1.c   | 227 +++++++++++++++++++++
 .../platform/qcom/iris/iris_platform_common.h      |   6 +
 .../platform/qcom/iris/iris_platform_vpu_ar50lt.c  | 111 ++++++++++
 drivers/media/platform/qcom/iris/iris_probe.c      |   4 +
 drivers/media/platform/qcom/iris/iris_vpu_buffer.c |  13 ++
 drivers/media/platform/qcom/iris/iris_vpu_buffer.h |   1 +
 7 files changed, 363 insertions(+)

diff --git a/drivers/media/platform/qcom/iris/Makefile b/drivers/media/platform/qcom/iris/Makefile
index f1b204b95694..bbd1f724963e 100644
--- a/drivers/media/platform/qcom/iris/Makefile
+++ b/drivers/media/platform/qcom/iris/Makefile
@@ -14,6 +14,7 @@ qcom-iris-objs += iris_buffer.o \
              iris_hfi_queue.o \
              iris_platform_vpu2.o \
              iris_platform_vpu3x.o \
+             iris_platform_vpu_ar50lt.o \
              iris_power.o \
              iris_probe.o \
              iris_resources.o \
diff --git a/drivers/media/platform/qcom/iris/iris_hfi_gen1.c b/drivers/media/platform/qcom/iris/iris_hfi_gen1.c
index 60f51a1ba941..39e88d5dd6d5 100644
--- a/drivers/media/platform/qcom/iris/iris_hfi_gen1.c
+++ b/drivers/media/platform/qcom/iris/iris_hfi_gen1.c
@@ -284,3 +284,230 @@ const struct iris_firmware_data iris_hfi_gen1_data = {
 	.enc_ip_int_buf_tbl = sm8250_enc_ip_int_buf_tbl,
 	.enc_ip_int_buf_tbl_size = ARRAY_SIZE(sm8250_enc_ip_int_buf_tbl),
 };
+
+static const struct platform_inst_fw_cap iris_inst_fw_cap_gen1_ar50lt_dec[] = {
+	{
+		.cap_id = STAGE,
+		.min = STAGE_1,
+		.max = STAGE_2,
+		.step_or_mask = 1,
+		.value = STAGE_2,
+		.hfi_id = HFI_PROPERTY_PARAM_WORK_MODE,
+		.set = iris_set_stage,
+	},
+};
+
+static const struct platform_inst_fw_cap inst_fw_cap_gen1_ar50lt_enc[] = {
+	{
+		.cap_id = STAGE,
+		.min = STAGE_1,
+		.max = STAGE_2,
+		.step_or_mask = 1,
+		.value = STAGE_2,
+		.hfi_id = HFI_PROPERTY_PARAM_WORK_MODE,
+		.set = iris_set_stage,
+	},
+	{
+		.cap_id = PROFILE_H264,
+		.min = V4L2_MPEG_VIDEO_H264_PROFILE_BASELINE,
+		.max = V4L2_MPEG_VIDEO_H264_PROFILE_MULTIVIEW_HIGH,
+		.step_or_mask = BIT(V4L2_MPEG_VIDEO_H264_PROFILE_BASELINE) |
+				BIT(V4L2_MPEG_VIDEO_H264_PROFILE_CONSTRAINED_BASELINE) |
+				BIT(V4L2_MPEG_VIDEO_H264_PROFILE_MAIN) |
+				BIT(V4L2_MPEG_VIDEO_H264_PROFILE_HIGH) |
+				BIT(V4L2_MPEG_VIDEO_H264_PROFILE_STEREO_HIGH) |
+				BIT(V4L2_MPEG_VIDEO_H264_PROFILE_MULTIVIEW_HIGH),
+		.value = V4L2_MPEG_VIDEO_H264_PROFILE_HIGH,
+		.hfi_id = HFI_PROPERTY_PARAM_PROFILE_LEVEL_CURRENT,
+		.flags = CAP_FLAG_OUTPUT_PORT | CAP_FLAG_MENU,
+		.set = iris_set_profile_level_gen1,
+	},
+	{
+		.cap_id = PROFILE_HEVC,
+		.min = V4L2_MPEG_VIDEO_HEVC_PROFILE_MAIN,
+		.max = V4L2_MPEG_VIDEO_HEVC_PROFILE_MAIN_STILL_PICTURE,
+		.step_or_mask = BIT(V4L2_MPEG_VIDEO_HEVC_PROFILE_MAIN) |
+				BIT(V4L2_MPEG_VIDEO_HEVC_PROFILE_MAIN_STILL_PICTURE),
+		.value = V4L2_MPEG_VIDEO_HEVC_PROFILE_MAIN,
+		.hfi_id = HFI_PROPERTY_PARAM_PROFILE_LEVEL_CURRENT,
+		.flags = CAP_FLAG_OUTPUT_PORT | CAP_FLAG_MENU,
+		.set = iris_set_profile_level_gen1,
+	},
+	{
+		.cap_id = LEVEL_H264,
+		.min = V4L2_MPEG_VIDEO_H264_LEVEL_1_0,
+		.max = V4L2_MPEG_VIDEO_H264_LEVEL_4_2,
+		.step_or_mask = BIT(V4L2_MPEG_VIDEO_H264_LEVEL_1_0) |
+				BIT(V4L2_MPEG_VIDEO_H264_LEVEL_1B) |
+				BIT(V4L2_MPEG_VIDEO_H264_LEVEL_1_1) |
+				BIT(V4L2_MPEG_VIDEO_H264_LEVEL_1_2) |
+				BIT(V4L2_MPEG_VIDEO_H264_LEVEL_1_3) |
+				BIT(V4L2_MPEG_VIDEO_H264_LEVEL_2_0) |
+				BIT(V4L2_MPEG_VIDEO_H264_LEVEL_2_1) |
+				BIT(V4L2_MPEG_VIDEO_H264_LEVEL_2_2) |
+				BIT(V4L2_MPEG_VIDEO_H264_LEVEL_3_0) |
+				BIT(V4L2_MPEG_VIDEO_H264_LEVEL_3_1) |
+				BIT(V4L2_MPEG_VIDEO_H264_LEVEL_3_2) |
+				BIT(V4L2_MPEG_VIDEO_H264_LEVEL_4_0) |
+				BIT(V4L2_MPEG_VIDEO_H264_LEVEL_4_1) |
+				BIT(V4L2_MPEG_VIDEO_H264_LEVEL_4_2),
+		.value = V4L2_MPEG_VIDEO_H264_LEVEL_1_0,
+		.hfi_id = HFI_PROPERTY_PARAM_PROFILE_LEVEL_CURRENT,
+		.flags = CAP_FLAG_OUTPUT_PORT | CAP_FLAG_MENU,
+		.set = iris_set_profile_level_gen1,
+	},
+	{
+		.cap_id = LEVEL_HEVC,
+		.min = V4L2_MPEG_VIDEO_HEVC_LEVEL_1,
+		.max = V4L2_MPEG_VIDEO_HEVC_LEVEL_4_1,
+		.step_or_mask = BIT(V4L2_MPEG_VIDEO_HEVC_LEVEL_1) |
+				BIT(V4L2_MPEG_VIDEO_HEVC_LEVEL_2) |
+				BIT(V4L2_MPEG_VIDEO_HEVC_LEVEL_2_1) |
+				BIT(V4L2_MPEG_VIDEO_HEVC_LEVEL_3) |
+				BIT(V4L2_MPEG_VIDEO_HEVC_LEVEL_3_1) |
+				BIT(V4L2_MPEG_VIDEO_HEVC_LEVEL_4) |
+				BIT(V4L2_MPEG_VIDEO_HEVC_LEVEL_4_1),
+		.value = V4L2_MPEG_VIDEO_HEVC_LEVEL_1,
+		.hfi_id = HFI_PROPERTY_PARAM_PROFILE_LEVEL_CURRENT,
+		.flags = CAP_FLAG_OUTPUT_PORT | CAP_FLAG_MENU,
+		.set = iris_set_profile_level_gen1,
+	},
+	{
+		.cap_id = HEADER_MODE,
+		.min = V4L2_MPEG_VIDEO_HEADER_MODE_SEPARATE,
+		.max = V4L2_MPEG_VIDEO_HEADER_MODE_JOINED_WITH_1ST_FRAME,
+		.step_or_mask = BIT(V4L2_MPEG_VIDEO_HEADER_MODE_SEPARATE) |
+				BIT(V4L2_MPEG_VIDEO_HEADER_MODE_JOINED_WITH_1ST_FRAME),
+		.value = V4L2_MPEG_VIDEO_HEADER_MODE_JOINED_WITH_1ST_FRAME,
+		.hfi_id = HFI_PROPERTY_CONFIG_VENC_SYNC_FRAME_SEQUENCE_HEADER,
+		.flags = CAP_FLAG_OUTPUT_PORT | CAP_FLAG_MENU,
+		.set = iris_set_header_mode_gen1,
+	},
+	{
+		.cap_id = BITRATE,
+		.min = BITRATE_MIN,
+		.max = BITRATE_MAX_AR50LT,
+		.step_or_mask = BITRATE_STEP,
+		.value = BITRATE_DEFAULT_AR50LT,
+		.hfi_id = HFI_PROPERTY_CONFIG_VENC_TARGET_BITRATE,
+		.flags = CAP_FLAG_OUTPUT_PORT | CAP_FLAG_INPUT_PORT |
+			CAP_FLAG_DYNAMIC_ALLOWED,
+		.set = iris_set_bitrate,
+	},
+	{
+		.cap_id = BITRATE_MODE,
+		.min = V4L2_MPEG_VIDEO_BITRATE_MODE_VBR,
+		.max = V4L2_MPEG_VIDEO_BITRATE_MODE_CBR,
+		.step_or_mask = BIT(V4L2_MPEG_VIDEO_BITRATE_MODE_VBR) |
+				BIT(V4L2_MPEG_VIDEO_BITRATE_MODE_CBR),
+		.value = V4L2_MPEG_VIDEO_BITRATE_MODE_VBR,
+		.hfi_id = HFI_PROPERTY_PARAM_VENC_RATE_CONTROL,
+		.flags = CAP_FLAG_OUTPUT_PORT | CAP_FLAG_MENU,
+		.set = iris_set_bitrate_mode_gen1,
+	},
+	{
+		.cap_id = FRAME_SKIP_MODE,
+		.min = V4L2_MPEG_VIDEO_FRAME_SKIP_MODE_DISABLED,
+		.max = V4L2_MPEG_VIDEO_FRAME_SKIP_MODE_BUF_LIMIT,
+		.step_or_mask = BIT(V4L2_MPEG_VIDEO_FRAME_SKIP_MODE_DISABLED) |
+				BIT(V4L2_MPEG_VIDEO_FRAME_SKIP_MODE_BUF_LIMIT),
+		.value = V4L2_MPEG_VIDEO_FRAME_SKIP_MODE_DISABLED,
+		.flags = CAP_FLAG_OUTPUT_PORT | CAP_FLAG_MENU,
+	},
+	{
+		.cap_id = FRAME_RC_ENABLE,
+		.min = 0,
+		.max = 1,
+		.step_or_mask = 1,
+		.value = 1,
+	},
+	{
+		.cap_id = GOP_SIZE,
+		.min = 0,
+		.max = (1 << 16) - 1,
+		.step_or_mask = 1,
+		.value = 30,
+		.set = iris_set_u32
+	},
+	{
+		.cap_id = ENTROPY_MODE,
+		.min = V4L2_MPEG_VIDEO_H264_ENTROPY_MODE_CAVLC,
+		.max = V4L2_MPEG_VIDEO_H264_ENTROPY_MODE_CABAC,
+		.step_or_mask = BIT(V4L2_MPEG_VIDEO_H264_ENTROPY_MODE_CAVLC) |
+				BIT(V4L2_MPEG_VIDEO_H264_ENTROPY_MODE_CABAC),
+		.value = V4L2_MPEG_VIDEO_H264_ENTROPY_MODE_CAVLC,
+		.hfi_id = HFI_PROPERTY_PARAM_VENC_H264_ENTROPY_CONTROL,
+		.flags = CAP_FLAG_OUTPUT_PORT | CAP_FLAG_MENU,
+		.set = iris_set_entropy_mode_gen1,
+	},
+	{
+		.cap_id = MIN_FRAME_QP_H264,
+		.min = MIN_QP_8BIT_AR50LT,
+		.max = MAX_QP,
+		.step_or_mask = 1,
+		.value = MIN_QP_8BIT_AR50LT,
+		.hfi_id = HFI_PROPERTY_PARAM_VENC_SESSION_QP_RANGE_V2,
+		.flags = CAP_FLAG_OUTPUT_PORT,
+		.set = iris_set_qp_range,
+	},
+	{
+		.cap_id = MIN_FRAME_QP_HEVC,
+		.min = MIN_QP_8BIT_AR50LT,
+		.max = MAX_QP_HEVC,
+		.step_or_mask = 1,
+		.value = MIN_QP_8BIT_AR50LT,
+		.hfi_id = HFI_PROPERTY_PARAM_VENC_SESSION_QP_RANGE_V2,
+		.flags = CAP_FLAG_OUTPUT_PORT,
+		.set = iris_set_qp_range,
+	},
+	{
+		.cap_id = MAX_FRAME_QP_H264,
+		.min = MIN_QP_8BIT_AR50LT,
+		.max = MAX_QP,
+		.step_or_mask = 1,
+		.value = MAX_QP,
+		.hfi_id = HFI_PROPERTY_PARAM_VENC_SESSION_QP_RANGE_V2,
+		.flags = CAP_FLAG_OUTPUT_PORT,
+		.set = iris_set_qp_range,
+	},
+	{
+		.cap_id = MAX_FRAME_QP_HEVC,
+		.min = MIN_QP_8BIT_AR50LT,
+		.max = MAX_QP_HEVC,
+		.step_or_mask = 1,
+		.value = MAX_QP_HEVC,
+		.hfi_id = HFI_PROPERTY_PARAM_VENC_SESSION_QP_RANGE_V2,
+		.flags = CAP_FLAG_OUTPUT_PORT,
+		.set = iris_set_qp_range,
+	},
+};
+
+static const u32 iris_hfi_gen2_ar50lt_dec_ip_int_buf_tbl[] = {
+	BUF_BIN,
+	BUF_SCRATCH_1,
+};
+
+const struct iris_firmware_data iris_hfi_gen1_ar50lt_data = {
+	.init_hfi_ops = &iris_hfi_gen1_sys_ops_init,
+
+	.inst_fw_caps_dec = iris_inst_fw_cap_gen1_ar50lt_dec,
+	.inst_fw_caps_dec_size = ARRAY_SIZE(iris_inst_fw_cap_gen1_ar50lt_dec),
+	.inst_fw_caps_enc = inst_fw_cap_gen1_ar50lt_enc,
+	.inst_fw_caps_enc_size = ARRAY_SIZE(inst_fw_cap_gen1_ar50lt_enc),
+
+	.dec_input_config_params_default =
+		sm8250_vdec_input_config_param_default,
+	.dec_input_config_params_default_size =
+		ARRAY_SIZE(sm8250_vdec_input_config_param_default),
+	.enc_input_config_params = sm8250_venc_input_config_param,
+	.enc_input_config_params_size =
+		ARRAY_SIZE(sm8250_venc_input_config_param),
+
+	.dec_ip_int_buf_tbl = iris_hfi_gen2_ar50lt_dec_ip_int_buf_tbl,
+	.dec_ip_int_buf_tbl_size = ARRAY_SIZE(iris_hfi_gen2_ar50lt_dec_ip_int_buf_tbl),
+	.dec_op_int_buf_tbl = sm8250_dec_op_int_buf_tbl,
+	.dec_op_int_buf_tbl_size = ARRAY_SIZE(sm8250_dec_op_int_buf_tbl),
+
+	.enc_ip_int_buf_tbl = sm8250_enc_ip_int_buf_tbl,
+	.enc_ip_int_buf_tbl_size = ARRAY_SIZE(sm8250_enc_ip_int_buf_tbl),
+};
diff --git a/drivers/media/platform/qcom/iris/iris_platform_common.h b/drivers/media/platform/qcom/iris/iris_platform_common.h
index 4a0895bf5720..f9763ea51c53 100644
--- a/drivers/media/platform/qcom/iris/iris_platform_common.h
+++ b/drivers/media/platform/qcom/iris/iris_platform_common.h
@@ -29,6 +29,10 @@ struct iris_inst;
 #define DEFAULT_QP				20
 #define BITRATE_DEFAULT			20000000
 
+#define BITRATE_MAX_AR50LT		100000000
+#define BITRATE_DEFAULT_AR50LT		20000000
+#define MIN_QP_8BIT_AR50LT		0
+
 enum stage_type {
 	STAGE_1 = 1,
 	STAGE_2 = 2,
@@ -41,8 +45,10 @@ enum pipe_type {
 };
 
 extern const struct iris_firmware_data iris_hfi_gen1_data;
+extern const struct iris_firmware_data iris_hfi_gen1_ar50lt_data;
 extern const struct iris_firmware_data iris_hfi_gen2_data;
 
+extern const struct iris_platform_data qcm2290_data;
 extern const struct iris_platform_data qcs8300_data;
 extern const struct iris_platform_data sc7280_data;
 extern const struct iris_platform_data sm8250_data;
diff --git a/drivers/media/platform/qcom/iris/iris_platform_vpu_ar50lt.c b/drivers/media/platform/qcom/iris/iris_platform_vpu_ar50lt.c
new file mode 100644
index 000000000000..76bebe012bd8
--- /dev/null
+++ b/drivers/media/platform/qcom/iris/iris_platform_vpu_ar50lt.c
@@ -0,0 +1,111 @@
+// SPDX-License-Identifier: GPL-2.0-only
+/*
+ * Copyright (c) Qualcomm Innovation Center, Inc. All rights reserved.
+ */
+
+#include "iris_core.h"
+#include "iris_ctrls.h"
+#include "iris_hfi_gen2.h"
+#include "iris_hfi_gen2_defines.h"
+#include "iris_platform_common.h"
+#include "iris_vpu_buffer.h"
+#include "iris_vpu_common.h"
+
+#define WRAPPER_INTR_STATUS_A2HWD_BMSK		0x10
+
+const struct iris_firmware_desc iris_vpu_ar50lt_p1_gen1_s6_desc = {
+	.firmware_data = &iris_hfi_gen1_ar50lt_data,
+	.get_vpu_buffer_size = iris_vpu_ar50lt_gen1_buf_size,
+	.fwname = "qcom/venus-6.0/venus.mbn",
+};
+
+static const u32 iris_fmts_ar50lt_dec[] = {
+	[IRIS_FMT_H264] = V4L2_PIX_FMT_H264,
+	[IRIS_FMT_HEVC] = V4L2_PIX_FMT_HEVC,
+	[IRIS_FMT_VP9] = V4L2_PIX_FMT_VP9,
+};
+
+static const struct bw_info iris_bw_table_dec_ar50lt[] = {
+	{ ((1920 * 1080) / 256) * 60, 1564000, },
+	{ ((1920 * 1080) / 256) * 30,  791000, },
+	{ ((1280 * 720) / 256) * 60,   688000, },
+	{ ((1280 * 720) / 256) * 30,   347000, },
+};
+
+static const struct icc_info iris_icc_info_ar50lt[] = {
+	{ "cpu-cfg",    1000, 1000     },
+	{ "video-mem",  1000, 6500000  },
+};
+
+static const char * const iris_pmdomain_table_ar50lt[] = { "venus", "vcodec0" };
+
+static const char * const iris_opp_pd_table_ar50lt[] = { "cx" };
+
+static const struct platform_clk_data iris_clk_table_ar50lt[] = {
+	{IRIS_CTRL_CLK,    "core"         },
+	{IRIS_AXI_CLK,     "iface"        },
+	{IRIS_AHB_CLK,     "bus"          },
+	{IRIS_HW_CLK,      "vcodec0_core" },
+	{IRIS_HW_AHB_CLK,  "vcodec0_bus"  },
+	{IRIS_THROTTLE_CLK, "throttle"    },
+};
+
+static const char * const iris_opp_clk_table_ar50lt[] = {
+	"vcodec0_core",
+	NULL,
+};
+
+static const struct tz_cp_config tz_cp_config_ar50lt[] = {
+	{
+		.cp_start = 0,
+		.cp_size = 0x25800000,
+		.cp_nonpixel_start = 0x01000000,
+		.cp_nonpixel_size = 0x24800000,
+	},
+};
+
+static struct platform_inst_caps platform_inst_cap_ar50lt = {
+	.min_frame_width = 128,
+	.max_frame_width = 1920,
+	.min_frame_height = 128,
+	.max_frame_height = 1920,
+	.max_mbpf = (1920 * 1088) / 256,
+	.mb_cycles_vpp = 440,
+	.mb_cycles_fw = 733003,
+	.mb_cycles_fw_vpp = 225975,
+	.num_comv = 0,
+	.max_frame_rate = 120,
+	.max_operating_rate = 120,
+};
+
+const struct iris_platform_data qcm2290_data = {
+	.firmware_desc_gen1 = &iris_vpu_ar50lt_p1_gen1_s6_desc,
+	.vpu_ops = &iris_vpu_ar50lt_ops,
+	.icc_tbl = iris_icc_info_ar50lt,
+	.icc_tbl_size = ARRAY_SIZE(iris_icc_info_ar50lt),
+	.bw_tbl_dec = iris_bw_table_dec_ar50lt,
+	.bw_tbl_dec_size = ARRAY_SIZE(iris_bw_table_dec_ar50lt),
+	.pmdomain_tbl = iris_pmdomain_table_ar50lt,
+	.pmdomain_tbl_size = ARRAY_SIZE(iris_pmdomain_table_ar50lt),
+	.opp_pd_tbl = iris_opp_pd_table_ar50lt,
+	.opp_pd_tbl_size = ARRAY_SIZE(iris_opp_pd_table_ar50lt),
+	.clk_tbl = iris_clk_table_ar50lt,
+	.clk_tbl_size = ARRAY_SIZE(iris_clk_table_ar50lt),
+	.opp_clk_tbl = iris_opp_clk_table_ar50lt,
+	/* Upper bound of DMA address range */
+	.dma_mask = 0xe0000000 - 1,
+	.inst_iris_fmts = iris_fmts_ar50lt_dec,
+	.inst_iris_fmts_size = ARRAY_SIZE(iris_fmts_ar50lt_dec),
+	.inst_caps = &platform_inst_cap_ar50lt,
+	.tz_cp_config_data = tz_cp_config_ar50lt,
+	.tz_cp_config_data_size = ARRAY_SIZE(tz_cp_config_ar50lt),
+	.num_vpp_pipe = 1,
+	.no_rpmh = true,
+	.wd_intr_mask = WRAPPER_INTR_STATUS_A2HWD_BMSK,
+	.icc_ib_multiplier = 2,
+	.max_session_count = 8,
+	.max_core_mbpf = ((1920 * 1088) / 256) * 4,
+	/* Concurrency: 1080p@30 decode + 1080p@30 encode */
+	/* Concurrency: 3 * 1080p@30 decode */
+	.max_core_mbps = (((1920 * 1088) / 256) * 90),
+};
diff --git a/drivers/media/platform/qcom/iris/iris_probe.c b/drivers/media/platform/qcom/iris/iris_probe.c
index 7211d520eda3..070e09406d89 100644
--- a/drivers/media/platform/qcom/iris/iris_probe.c
+++ b/drivers/media/platform/qcom/iris/iris_probe.c
@@ -356,6 +356,10 @@ static const struct dev_pm_ops iris_pm_ops = {
 };
 
 static const struct of_device_id iris_dt_match[] = {
+	{
+		.compatible = "qcom,qcm2290-venus",
+		.data = &qcm2290_data,
+	},
 	{
 		.compatible = "qcom,qcs8300-iris",
 		.data = &qcs8300_data,
diff --git a/drivers/media/platform/qcom/iris/iris_vpu_buffer.c b/drivers/media/platform/qcom/iris/iris_vpu_buffer.c
index 9270422c1601..125fb2d6960d 100644
--- a/drivers/media/platform/qcom/iris/iris_vpu_buffer.c
+++ b/drivers/media/platform/qcom/iris/iris_vpu_buffer.c
@@ -2135,6 +2135,19 @@ u32 iris_vpu4x_buf_size(struct iris_inst *inst, enum iris_buffer_type buffer_typ
 	return size;
 }
 
+u32 iris_vpu_ar50lt_gen1_buf_size(struct iris_inst *inst, enum iris_buffer_type buffer_type)
+{
+	const struct iris_hfi_session_ops *hfi_ops = inst->hfi_session_ops;
+	int ret;
+
+	/* return 0 on error to let the driver cope */
+	ret = hfi_ops->session_get_property(inst, HFI_PROPERTY_CONFIG_BUFFER_REQUIREMENTS);
+	if (ret)
+		return 0;
+
+	return inst->buffers[buffer_type].size;
+}
+
 static u32 internal_buffer_count(struct iris_inst *inst,
 				 enum iris_buffer_type buffer_type)
 {
diff --git a/drivers/media/platform/qcom/iris/iris_vpu_buffer.h b/drivers/media/platform/qcom/iris/iris_vpu_buffer.h
index 8c0d6b7b5de8..1d07137c70cd 100644
--- a/drivers/media/platform/qcom/iris/iris_vpu_buffer.h
+++ b/drivers/media/platform/qcom/iris/iris_vpu_buffer.h
@@ -288,6 +288,7 @@ static inline u32 size_av1d_qp(u32 frame_width, u32 frame_height)
 u32 iris_vpu_buf_size(struct iris_inst *inst, enum iris_buffer_type buffer_type);
 u32 iris_vpu33_buf_size(struct iris_inst *inst, enum iris_buffer_type buffer_type);
 u32 iris_vpu4x_buf_size(struct iris_inst *inst, enum iris_buffer_type buffer_type);
+u32 iris_vpu_ar50lt_gen1_buf_size(struct iris_inst *inst, enum iris_buffer_type buffer_type);
 int iris_vpu_buf_count(struct iris_inst *inst, enum iris_buffer_type buffer_type);
 
 #endif

-- 
2.47.3


^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [PATCH v2 13/16] media: iris: Introduce buffer size calculations for AR50LT
  2026-05-13 12:45 [PATCH v2 00/16] media: iris: Add AR50LT core support and enable Agatti platform Dmitry Baryshkov
                   ` (11 preceding siblings ...)
  2026-05-13 12:45 ` [PATCH v2 12/16] media: iris: implement support for the Agatti platform Dmitry Baryshkov
@ 2026-05-13 12:45 ` Dmitry Baryshkov
  2026-05-13 12:45 ` [PATCH v2 14/16] media: iris: add Gen2 firmware support on the Agatti platform Dmitry Baryshkov
                   ` (3 subsequent siblings)
  16 siblings, 0 replies; 19+ messages in thread
From: Dmitry Baryshkov @ 2026-05-13 12:45 UTC (permalink / raw)
  To: Vikash Garodia, Abhinav Kumar, Bryan O'Donoghue,
	Mauro Carvalho Chehab, Bjorn Andersson, Konrad Dybcio,
	Rob Herring, Krzysztof Kozlowski, Conor Dooley, Vishnu Reddy
  Cc: linux-media, linux-arm-msm, linux-kernel, devicetree,
	Dikshita Agarwal

From: Dikshita Agarwal <dikshita.agarwal@oss.qualcomm.com>

Introduces AR50LT  buffer size calculation for both encoder and
decoder. Reuse the buffer size calculation which are common, while
adding the AR50LT specific ones separately.

Signed-off-by: Dikshita Agarwal <dikshita.agarwal@oss.qualcomm.com>
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
---
 drivers/media/platform/qcom/iris/iris_vpu_buffer.c | 401 +++++++++++++++++++++
 drivers/media/platform/qcom/iris/iris_vpu_buffer.h |  37 ++
 2 files changed, 438 insertions(+)

diff --git a/drivers/media/platform/qcom/iris/iris_vpu_buffer.c b/drivers/media/platform/qcom/iris/iris_vpu_buffer.c
index 125fb2d6960d..e75684d6d97d 100644
--- a/drivers/media/platform/qcom/iris/iris_vpu_buffer.c
+++ b/drivers/media/platform/qcom/iris/iris_vpu_buffer.c
@@ -50,6 +50,32 @@ static u32 hfi_buffer_bin_h264d(u32 frame_width, u32 frame_height, u32 num_vpp_p
 	return size_h264d_hw_bin_buffer(n_aligned_w, n_aligned_h, num_vpp_pipes);
 }
 
+static u32 size_h264d_hw_bin_buffer_ar50lt(u32 frame_width, u32 frame_height, u32 num_vpp_pipes)
+{
+	u32 size_yuv, size_bin_hdr, size_bin_res;
+
+	size_yuv = ((frame_width * frame_height * 3) >> 1);
+	if (size_yuv <= 1920 * 1088 * 3 / 2) {
+		size_bin_hdr = size_yuv * H264_CABAC_HDR_RATIO_SM_TOT;
+		size_bin_res = size_yuv * H264_CABAC_RES_RATIO_SM_TOT;
+	} else {
+		size_bin_hdr = (size_yuv * 3) / 5;
+		size_bin_res = (size_yuv * 3) / 2;
+	}
+	size_bin_hdr = ALIGN(size_bin_hdr, DMA_ALIGNMENT);
+	size_bin_res = ALIGN(size_bin_res, DMA_ALIGNMENT);
+
+	return size_bin_hdr + size_bin_res;
+}
+
+static u32 hfi_buffer_bin_h264d_ar50lt(u32 frame_width, u32 frame_height, u32 num_vpp_pipes)
+{
+	u32 n_aligned_h = ALIGN(frame_height, 16);
+	u32 n_aligned_w = ALIGN(frame_width, 16);
+
+	return size_h264d_hw_bin_buffer_ar50lt(n_aligned_w, n_aligned_h, num_vpp_pipes);
+}
+
 static u32 size_av1d_hw_bin_buffer(u32 frame_width, u32 frame_height, u32 num_vpp_pipes)
 {
 	u32 size_yuv, size_bin_hdr, size_bin_res;
@@ -103,6 +129,21 @@ static u32 hfi_buffer_bin_vp9d(u32 frame_width, u32 frame_height, u32 num_vpp_pi
 	return _size * num_vpp_pipes;
 }
 
+static u32 hfi_buffer_bin_vp9d_ar50lt(u32 frame_width, u32 frame_height, u32 num_vpp_pipes)
+{
+	u32 size_yuv, size;
+
+	size_yuv = ALIGN(frame_width, 16) * ALIGN(frame_height, 16) * 3 / 2;
+	size_yuv = ALIGN(size_yuv, DMA_ALIGNMENT);
+
+	size = ALIGN(((((MAX(size_yuv, VPX_DECODER_FRAME_BIN_BUFFER_SIZE)) * 6) / 5) /
+		      num_vpp_pipes), DMA_ALIGNMENT) +
+		ALIGN((((MAX(size_yuv, VPX_DECODER_FRAME_BIN_BUFFER_SIZE)) * 4) / num_vpp_pipes),
+		      DMA_ALIGNMENT);
+
+	return size * num_vpp_pipes;
+}
+
 static u32 hfi_buffer_bin_h265d(u32 frame_width, u32 frame_height, u32 num_vpp_pipes)
 {
 	u32 n_aligned_w = ALIGN(frame_width, 16);
@@ -111,6 +152,32 @@ static u32 hfi_buffer_bin_h265d(u32 frame_width, u32 frame_height, u32 num_vpp_p
 	return size_h265d_hw_bin_buffer(n_aligned_w, n_aligned_h, num_vpp_pipes);
 }
 
+static u32 size_h265d_hw_bin_buffer_ar50lt(u32 frame_width, u32 frame_height, u32 num_vpp_pipes)
+{
+	u32 size_yuv, size_bin_hdr, size_bin_res;
+
+	size_yuv = ((frame_width * frame_height * 3) >> 1);
+	if (size_yuv <= ((BIN_BUFFER_THRESHOLD * 3) >> 1)) {
+		size_bin_hdr = size_yuv * H265_CABAC_HDR_RATIO_SM_TOT;
+		size_bin_res = size_yuv * H265_CABAC_RES_RATIO_SM_TOT;
+	} else {
+		size_bin_hdr = (size_yuv * 41) / 50;
+		size_bin_res = (size_yuv * 59) / 50;
+	}
+	size_bin_hdr = ALIGN(size_bin_hdr, DMA_ALIGNMENT);
+	size_bin_res = ALIGN(size_bin_res, DMA_ALIGNMENT);
+
+	return size_bin_hdr + size_bin_res;
+}
+
+static u32 hfi_buffer_bin_h265d_ar50lt(u32 frame_width, u32 frame_height, u32 num_vpp_pipes)
+{
+	u32 n_aligned_w = ALIGN(frame_width, 16);
+	u32 n_aligned_h = ALIGN(frame_height, 16);
+
+	return size_h265d_hw_bin_buffer_ar50lt(n_aligned_w, n_aligned_h, num_vpp_pipes);
+}
+
 static u32 hfi_buffer_comv_h264d(u32 frame_width, u32 frame_height, u32 _comv_bufcount)
 {
 	u32 frame_height_in_mbs = DIV_ROUND_UP(frame_height, 16);
@@ -174,6 +241,14 @@ static u32 size_h264d_bse_cmd_buf(u32 frame_height)
 		SIZE_H264D_BSE_CMD_PER_BUF;
 }
 
+static u32 size_h264d_bse_cmd_buf_ar50lt(u32 frame_height)
+{
+	u32 height = ALIGN(frame_height, 32);
+
+	return min_t(u32, (DIV_ROUND_UP(height, 16) * 12), H264D_MAX_SLICE) *
+		SIZE_H264D_BSE_CMD_PER_BUF;
+}
+
 static u32 size_h265d_bse_cmd_buf(u32 frame_width, u32 frame_height)
 {
 	u32 _size = ALIGN(((ALIGN(frame_width, LCU_MAX_SIZE_PELS) / LCU_MIN_SIZE_PELS) *
@@ -185,6 +260,18 @@ static u32 size_h265d_bse_cmd_buf(u32 frame_width, u32 frame_height)
 	return _size;
 }
 
+static u32 size_h265d_bse_cmd_buf_ar50lt(u32 frame_width, u32 frame_height)
+{
+	u32 _size = ALIGN(((ALIGN(frame_width, LCU_MAX_SIZE_PELS) / LCU_MIN_SIZE_PELS) *
+			   (ALIGN(frame_height, LCU_MAX_SIZE_PELS) / LCU_MIN_SIZE_PELS)) *
+			    NUM_HW_PIC_BUF, DMA_ALIGNMENT);
+
+	_size = min_t(u32, _size, H265D_MAX_SLICE_AR50LT + 1);
+	_size = 2 * _size * SIZE_H265D_BSE_CMD_PER_BUF;
+
+	return _size;
+}
+
 static u32 hfi_buffer_persist_h265d(u32 rpu_enabled)
 {
 	return ALIGN((SIZE_SLIST_BUF_H265 * NUM_SLIST_BUF_H265 +
@@ -195,6 +282,13 @@ static u32 hfi_buffer_persist_h265d(u32 rpu_enabled)
 		     DMA_ALIGNMENT);
 }
 
+static u32 hfi_buffer_persist_h265d_ar50lt(void)
+{
+	return ALIGN((SIZE_SLIST_BUF_H265 * NUM_SLIST_BUF_H265 +
+		      H265_NUM_TILE * sizeof(u32) + NUM_HW_PIC_BUF * SIZE_SEI_USERDATA),
+		     DMA_ALIGNMENT);
+}
+
 static inline
 u32 hfi_iris3_vp9d_comv_size(void)
 {
@@ -212,6 +306,13 @@ static u32 hfi_buffer_persist_vp9d(void)
 		HDR10_HIST_EXTRADATA_SIZE;
 }
 
+static u32 hfi_buffer_persist_vp9d_ar50lt(void)
+{
+	return ALIGN(VP9_NUM_PROBABILITY_TABLE_BUF * VP9_PROB_TABLE_SIZE, DMA_ALIGNMENT) +
+		ALIGN(hfi_iris3_vp9d_comv_size(), DMA_ALIGNMENT) +
+		ALIGN(MAX_SUPERFRAME_HEADER_LEN, DMA_ALIGNMENT);
+}
+
 static u32 size_h264d_vpp_cmd_buf(u32 frame_height)
 {
 	u32 size, height = ALIGN(frame_height, 32);
@@ -222,6 +323,16 @@ static u32 size_h264d_vpp_cmd_buf(u32 frame_height)
 	return size > VPP_CMD_MAX_SIZE ? VPP_CMD_MAX_SIZE : size;
 }
 
+static u32 size_h264d_vpp_cmd_buf_ar50lt(u32 frame_height)
+{
+	u32 size, height = ALIGN(frame_height, 32);
+
+	size = min_t(u32, (DIV_ROUND_UP(height, 16) * 12), H264D_MAX_SLICE) *
+		SIZE_H264D_VPP_CMD_PER_BUF;
+
+	return size > VPP_CMD_MAX_SIZE ? VPP_CMD_MAX_SIZE : size;
+}
+
 static u32 hfi_buffer_persist_h264d(void)
 {
 	return ALIGN(SIZE_SLIST_BUF_H264 * NUM_SLIST_BUF_H264 +
@@ -230,6 +341,11 @@ static u32 hfi_buffer_persist_h264d(void)
 		    DMA_ALIGNMENT);
 }
 
+static u32 hfi_buffer_persist_h264d_ar50lt(void)
+{
+	return ALIGN((SIZE_SLIST_BUF_H264 * NUM_SLIST_BUF_H264), DMA_ALIGNMENT);
+}
+
 static u32 hfi_buffer_persist_av1d(u32 max_width, u32 max_height, u32 total_ref_count)
 {
 	u32 comv_size, size;
@@ -255,6 +371,17 @@ static u32 hfi_buffer_non_comv_h264d(u32 frame_width, u32 frame_height, u32 num_
 	return ALIGN(size, DMA_ALIGNMENT);
 }
 
+static u32 hfi_buffer_non_comv_h264d_ar50lt(u32 frame_width, u32 frame_height, u32 num_vpp_pipes)
+{
+	u32 size_bse = size_h264d_bse_cmd_buf_ar50lt(frame_height);
+	u32 size_vpp = size_h264d_vpp_cmd_buf_ar50lt(frame_height);
+	u32 size = ALIGN(size_bse, DMA_ALIGNMENT) +
+		ALIGN(size_vpp, DMA_ALIGNMENT) +
+		ALIGN(SIZE_HW_PIC(SIZE_H264D_HW_PIC_T), DMA_ALIGNMENT);
+
+	return ALIGN(size, DMA_ALIGNMENT);
+}
+
 static u32 size_h265d_vpp_cmd_buf(u32 frame_width, u32 frame_height)
 {
 	u32 _size = ALIGN(((ALIGN(frame_width, LCU_MAX_SIZE_PELS) / LCU_MIN_SIZE_PELS) *
@@ -269,6 +396,20 @@ static u32 size_h265d_vpp_cmd_buf(u32 frame_width, u32 frame_height)
 	return _size;
 }
 
+static u32 size_h265d_vpp_cmd_buf_ar50lt(u32 frame_width, u32 frame_height)
+{
+	u32 _size = ALIGN(((ALIGN(frame_width, LCU_MAX_SIZE_PELS) / LCU_MIN_SIZE_PELS) *
+			   (ALIGN(frame_height, LCU_MAX_SIZE_PELS) / LCU_MIN_SIZE_PELS)) *
+			  NUM_HW_PIC_BUF, DMA_ALIGNMENT);
+	_size = min_t(u32, _size, H265D_MAX_SLICE_AR50LT + 1);
+	_size = ALIGN(_size, 4);
+	_size = 2 * _size * SIZE_H265D_VPP_CMD_PER_BUF_AR50LT;
+	if (_size > VPP_CMD_MAX_SIZE)
+		_size = VPP_CMD_MAX_SIZE;
+
+	return _size;
+}
+
 static u32 hfi_buffer_non_comv_h265d(u32 frame_width, u32 frame_height, u32 num_vpp_pipes)
 {
 	u32 _size_bse = size_h265d_bse_cmd_buf(frame_width, frame_height);
@@ -285,6 +426,20 @@ static u32 hfi_buffer_non_comv_h265d(u32 frame_width, u32 frame_height, u32 num_
 	return ALIGN(_size, DMA_ALIGNMENT);
 }
 
+static u32 hfi_buffer_non_comv_h265d_ar50lt(u32 frame_width, u32 frame_height, u32 num_vpp_pipes)
+{
+	u32 _size_bse = size_h265d_bse_cmd_buf_ar50lt(frame_width, frame_height);
+	u32 _size_vpp = size_h265d_vpp_cmd_buf_ar50lt(frame_width, frame_height);
+	u32 _size = ALIGN(_size_bse, DMA_ALIGNMENT) +
+		ALIGN(_size_vpp, DMA_ALIGNMENT) +
+		ALIGN(2 * sizeof(u16) *
+		(ALIGN(frame_width, LCU_MAX_SIZE_PELS) / LCU_MIN_SIZE_PELS) *
+		(ALIGN(frame_height, LCU_MAX_SIZE_PELS) / LCU_MIN_SIZE_PELS), DMA_ALIGNMENT) +
+		ALIGN(SIZE_HW_PIC(SIZE_H265D_HW_PIC_T), DMA_ALIGNMENT);
+
+	return ALIGN(_size, DMA_ALIGNMENT);
+}
+
 static u32 size_vpss_lb(u32 frame_width, u32 frame_height)
 {
 	u32 opb_lb_wr_llb_y_buffer_size, opb_lb_wr_llb_uv_buffer_size;
@@ -317,6 +472,13 @@ u32 size_h265d_lb_fe_top_data(u32 frame_width, u32 frame_height)
 		(ALIGN(frame_width, 64) + 8) * 2;
 }
 
+static inline
+u32 size_h265d_lb_fe_top_data_ar50lt(u32 frame_width, u32 frame_height)
+{
+	return ALIGN(MAX_FE_NBR_DATA_LUMA_LINE_BUFFER_SIZE *
+		(ALIGN(frame_width, 64) + 8), DMA_ALIGNMENT) * 2;
+}
+
 static inline
 u32 size_h265d_lb_fe_top_ctrl(u32 frame_width, u32 frame_height)
 {
@@ -348,6 +510,17 @@ u32 size_h265d_lb_se_left_ctrl(u32 frame_width, u32 frame_height)
 		MAX_SE_NBR_CTRL_LCU64_LINE_BUFFER_SIZE));
 }
 
+static inline
+u32 size_h265d_lb_se_left_ctrl_ar50lt(u32 frame_width, u32 frame_height)
+{
+	return max_t(u32, ((frame_height + 16 - 1) / 8) *
+		MAX_SE_NBR_CTRL_LCU16_LINE_BUFFER_SIZE_AR50LT,
+		max_t(u32, ((frame_height + 32 - 1) / 8) *
+		MAX_SE_NBR_CTRL_LCU32_LINE_BUFFER_SIZE_AR50LT,
+		((frame_height + 64 - 1) / 8) *
+		MAX_SE_NBR_CTRL_LCU64_LINE_BUFFER_SIZE_AR50LT));
+}
+
 static inline
 u32 size_h265d_lb_pe_top_data(u32 frame_width, u32 frame_height)
 {
@@ -355,6 +528,13 @@ u32 size_h265d_lb_pe_top_data(u32 frame_width, u32 frame_height)
 		(ALIGN(frame_width, LCU_MIN_SIZE_PELS) / LCU_MIN_SIZE_PELS);
 }
 
+static inline
+u32 size_h265d_lb_pe_top_data_ar50lt(u32 frame_width, u32 frame_height)
+{
+	return MAX_PE_NBR_DATA_LCU64_LINE_BUFFER_SIZE_AR50LT *
+		(ALIGN(frame_width, LCU_MIN_SIZE_PELS) / LCU_MIN_SIZE_PELS);
+}
+
 static inline
 u32 size_h265d_lb_vsp_top(u32 frame_width, u32 frame_height)
 {
@@ -404,6 +584,29 @@ u32 hfi_buffer_line_h265d(u32 frame_width, u32 frame_height, bool is_opb, u32 nu
 	return ALIGN((_size + vpss_lb_size), DMA_ALIGNMENT);
 }
 
+static inline
+u32 hfi_buffer_line_h265d_ar50lt(u32 frame_width, u32 frame_height, bool is_opb, u32 num_vpp_pipes)
+{
+	u32 size;
+
+	size = ALIGN(size_h265d_lb_fe_top_data_ar50lt(frame_width, frame_height), DMA_ALIGNMENT) +
+		ALIGN(size_h265d_lb_fe_top_ctrl(frame_width, frame_height), DMA_ALIGNMENT) +
+		ALIGN(size_h265d_lb_fe_left_ctrl(frame_width, frame_height),
+		      DMA_ALIGNMENT) * num_vpp_pipes +
+		ALIGN(size_h265d_lb_se_left_ctrl_ar50lt(frame_width, frame_height),
+		      DMA_ALIGNMENT) * num_vpp_pipes +
+		ALIGN(size_h265d_lb_se_top_ctrl(frame_width, frame_height), DMA_ALIGNMENT) +
+		ALIGN(size_h265d_lb_pe_top_data_ar50lt(frame_width, frame_height), DMA_ALIGNMENT) +
+		ALIGN(size_h265d_lb_vsp_top(frame_width, frame_height), DMA_ALIGNMENT) +
+		ALIGN(size_h265d_lb_vsp_left(frame_width, frame_height),
+		      DMA_ALIGNMENT) * num_vpp_pipes +
+		ALIGN(size_h265d_lb_recon_dma_metadata_wr(frame_width, frame_height),
+		      DMA_ALIGNMENT) * 4 +
+		ALIGN(size_h265d_qp(frame_width, frame_height), DMA_ALIGNMENT);
+
+	return ALIGN(size, DMA_ALIGNMENT);
+}
+
 static inline
 u32 size_vpxd_lb_fe_left_ctrl(u32 frame_width, u32 frame_height)
 {
@@ -438,6 +641,17 @@ u32 size_vpxd_lb_se_left_ctrl(u32 frame_width, u32 frame_height)
 			   MAX_SE_NBR_CTRL_LCU64_LINE_BUFFER_SIZE));
 }
 
+static inline
+u32 size_vpxd_lb_se_left_ctrl_ar50lt(u32 frame_width, u32 frame_height)
+{
+	return max_t(u32, ((frame_height + 15) >> 4) *
+		     MAX_SE_NBR_CTRL_LCU16_LINE_BUFFER_SIZE_AR50LT,
+		     max_t(u32, ((frame_height + 31) >> 5) *
+			   MAX_SE_NBR_CTRL_LCU32_LINE_BUFFER_SIZE_AR50LT,
+			   ((frame_height + 63) >> 6) *
+			   MAX_SE_NBR_CTRL_LCU64_LINE_BUFFER_SIZE_AR50LT));
+}
+
 static inline
 u32 size_vpxd_lb_recon_dma_metadata_wr(u32 frame_width, u32 frame_height)
 {
@@ -492,6 +706,19 @@ u32 hfi_iris3_vp9d_lb_size(u32 frame_width, u32 frame_height, u32 num_vpp_pipes)
 		ALIGN(size_vp9d_qp(frame_width, frame_height), DMA_ALIGNMENT);
 }
 
+static inline
+u32 hfi_ar50lt_vp9d_lb_size(u32 frame_width, u32 frame_height, u32 num_vpp_pipes)
+{
+	return ALIGN(size_vpxd_lb_fe_left_ctrl(frame_width, frame_height), DMA_ALIGNMENT) *
+		num_vpp_pipes +
+		ALIGN(size_vpxd_lb_se_left_ctrl_ar50lt(frame_width, frame_height), DMA_ALIGNMENT) *
+		num_vpp_pipes +
+		ALIGN(size_vp9d_lb_vsp_top(frame_width, frame_height), DMA_ALIGNMENT) +
+		ALIGN(size_vpxd_lb_se_top_ctrl(frame_width, frame_height), DMA_ALIGNMENT) +
+		ALIGN(size_vp9d_lb_pe_top_data(frame_width, frame_height), DMA_ALIGNMENT) +
+		ALIGN(size_vp9d_lb_fe_top_data(frame_width, frame_height), DMA_ALIGNMENT);
+}
+
 static inline
 u32 hfi_buffer_line_vp9d(u32 frame_width, u32 frame_height, u32 _yuv_bufcount_min, bool is_opb,
 			 u32 num_vpp_pipes)
@@ -507,6 +734,13 @@ u32 hfi_buffer_line_vp9d(u32 frame_width, u32 frame_height, u32 _yuv_bufcount_mi
 	return _lb_size + vpss_lb_size + 4096;
 }
 
+static inline
+u32 hfi_buffer_line_vp9d_ar50lt(u32 frame_width, u32 frame_height, u32 _yuv_bufcount_min,
+				bool is_opb, u32 num_vpp_pipes)
+{
+	return hfi_ar50lt_vp9d_lb_size(frame_width, frame_height, num_vpp_pipes);
+}
+
 static u32 hfi_buffer_line_h264d(u32 frame_width, u32 frame_height,
 				 bool is_opb, u32 num_vpp_pipes)
 {
@@ -529,6 +763,25 @@ static u32 hfi_buffer_line_h264d(u32 frame_width, u32 frame_height,
 	return ALIGN((size + vpss_lb_size), DMA_ALIGNMENT);
 }
 
+static u32 hfi_buffer_line_h264d_ar50lt(u32 frame_width, u32 frame_height,
+					bool is_opb, u32 num_vpp_pipes)
+{
+	u32 size;
+
+	size = ALIGN(size_h264d_lb_fe_top_data_ar50lt(frame_width), DMA_ALIGNMENT) +
+		ALIGN(size_h264d_lb_fe_top_ctrl_ar50lt(frame_width), DMA_ALIGNMENT) +
+		ALIGN(size_h264d_lb_fe_left_ctrl(frame_height), DMA_ALIGNMENT) * num_vpp_pipes +
+		ALIGN(size_h264d_lb_se_top_ctrl_ar50lt(frame_width), DMA_ALIGNMENT) +
+		ALIGN(size_h264d_lb_se_left_ctrl_ar50lt(frame_height), DMA_ALIGNMENT) *
+		num_vpp_pipes +
+		ALIGN(size_h264d_lb_pe_top_data_ar50lt(frame_width), DMA_ALIGNMENT) +
+		ALIGN(size_h264d_lb_vsp_top(frame_width), DMA_ALIGNMENT) +
+		ALIGN(size_h264d_lb_recon_dma_metadata_wr(frame_height), DMA_ALIGNMENT) * 2 +
+		ALIGN(size_h264d_qp(frame_width, frame_height), DMA_ALIGNMENT);
+
+	return ALIGN(size, DMA_ALIGNMENT);
+}
+
 static u32 size_av1d_lb_opb_wr1_nv12_ubwc(u32 frame_width, u32 frame_height)
 {
 	u32 size, y_width, y_width_a = 128;
@@ -724,6 +977,23 @@ static u32 iris_vpu_dec_bin_size(struct iris_inst *inst)
 	return 0;
 }
 
+static u32 iris_vpu_ar50lt_dec_bin_size(struct iris_inst *inst)
+{
+	u32 num_vpp_pipes = inst->core->iris_platform_data->num_vpp_pipe;
+	struct v4l2_format *f = inst->fmt_src;
+	u32 height = f->fmt.pix_mp.height;
+	u32 width = f->fmt.pix_mp.width;
+
+	if (inst->codec == V4L2_PIX_FMT_H264)
+		return hfi_buffer_bin_h264d_ar50lt(width, height, num_vpp_pipes);
+	else if (inst->codec == V4L2_PIX_FMT_HEVC)
+		return hfi_buffer_bin_h265d_ar50lt(width, height, num_vpp_pipes);
+	else if (inst->codec == V4L2_PIX_FMT_VP9)
+		return hfi_buffer_bin_vp9d_ar50lt(width, height, num_vpp_pipes);
+
+	return 0;
+}
+
 static u32 iris_vpu_dec_comv_size(struct iris_inst *inst)
 {
 	u32 num_comv = VIDEO_MAX_FRAME;
@@ -767,6 +1037,18 @@ static u32 iris_vpu_dec_persist_size(struct iris_inst *inst)
 	return 0;
 }
 
+static u32 iris_vpu_ar50lt_dec_persist_size(struct iris_inst *inst)
+{
+	if (inst->codec == V4L2_PIX_FMT_H264)
+		return hfi_buffer_persist_h264d_ar50lt();
+	else if (inst->codec == V4L2_PIX_FMT_HEVC)
+		return hfi_buffer_persist_h265d_ar50lt();
+	else if (inst->codec == V4L2_PIX_FMT_VP9)
+		return hfi_buffer_persist_vp9d_ar50lt();
+
+	return 0;
+}
+
 static u32 iris_vpu_dec_dpb_size(struct iris_inst *inst)
 {
 	if (iris_split_mode_enabled(inst))
@@ -790,6 +1072,21 @@ static u32 iris_vpu_dec_non_comv_size(struct iris_inst *inst)
 	return 0;
 }
 
+static u32 iris_vpu_ar50lt_dec_non_comv_size(struct iris_inst *inst)
+{
+	u32 num_vpp_pipes = inst->core->iris_platform_data->num_vpp_pipe;
+	struct v4l2_format *f = inst->fmt_src;
+	u32 height = f->fmt.pix_mp.height;
+	u32 width = f->fmt.pix_mp.width;
+
+	if (inst->codec == V4L2_PIX_FMT_H264)
+		return hfi_buffer_non_comv_h264d_ar50lt(width, height, num_vpp_pipes);
+	else if (inst->codec == V4L2_PIX_FMT_HEVC)
+		return hfi_buffer_non_comv_h265d_ar50lt(width, height, num_vpp_pipes);
+
+	return 0;
+}
+
 static u32 iris_vpu_dec_line_size(struct iris_inst *inst)
 {
 	u32 num_vpp_pipes = inst->core->iris_platform_data->num_vpp_pipe;
@@ -815,6 +1112,29 @@ static u32 iris_vpu_dec_line_size(struct iris_inst *inst)
 	return 0;
 }
 
+static u32 iris_vpu_ar50lt_dec_line_size(struct iris_inst *inst)
+{
+	u32 num_vpp_pipes = inst->core->iris_platform_data->num_vpp_pipe;
+	struct v4l2_format *f = inst->fmt_src;
+	u32 height = f->fmt.pix_mp.height;
+	u32 width = f->fmt.pix_mp.width;
+	bool is_opb = false;
+	u32 out_min_count = inst->buffers[BUF_OUTPUT].min_count;
+
+	if (iris_split_mode_enabled(inst))
+		is_opb = true;
+
+	if (inst->codec == V4L2_PIX_FMT_H264)
+		return hfi_buffer_line_h264d_ar50lt(width, height, is_opb, num_vpp_pipes);
+	else if (inst->codec == V4L2_PIX_FMT_HEVC)
+		return hfi_buffer_line_h265d_ar50lt(width, height, is_opb, num_vpp_pipes);
+	else if (inst->codec == V4L2_PIX_FMT_VP9)
+		return hfi_buffer_line_vp9d_ar50lt(width, height, out_min_count, is_opb,
+			num_vpp_pipes);
+
+	return 0;
+}
+
 static u32 iris_vpu_dec_scratch1_size(struct iris_inst *inst)
 {
 	return iris_vpu_dec_comv_size(inst) +
@@ -822,6 +1142,13 @@ static u32 iris_vpu_dec_scratch1_size(struct iris_inst *inst)
 		iris_vpu_dec_line_size(inst);
 }
 
+static u32 iris_vpu_ar50lt_dec_scratch1_size(struct iris_inst *inst)
+{
+	return iris_vpu_dec_comv_size(inst) +
+		iris_vpu_ar50lt_dec_non_comv_size(inst) +
+		iris_vpu_ar50lt_dec_line_size(inst);
+}
+
 static inline u32 iris_vpu_enc_get_bitstream_width(struct iris_inst *inst)
 {
 	if (is_rotation_90_or_270(inst))
@@ -1410,6 +1737,15 @@ u32 hfi_buffer_dpb_enc(u32 frame_width, u32 frame_height, bool is_ten_bit)
 	return size;
 }
 
+static inline
+u32 hfi_buffer_dpb_enc_ar50lt(u32 frame_width, u32 frame_height, bool is_ten_bit)
+{
+	if (!is_ten_bit)
+		return size_enc_ref_buffer(frame_width, frame_height);
+	else
+		return size_enc_ten_bit_ref_buffer(frame_width, frame_height);
+}
+
 static u32 iris_vpu_enc_arp_size(struct iris_inst *inst)
 {
 	return HFI_BUFFER_ARP_ENC;
@@ -1434,6 +1770,16 @@ u32 hfi_buffer_vpss_enc(u32 dswidth, u32 dsheight, bool ds_enable,
 	return 0;
 }
 
+static inline
+u32 hfi_buffer_vpss_enc_ar50lt(u32 dswidth, u32 dsheight, bool ds_enable,
+			       u32 blur, bool is_ten_bit)
+{
+	if (ds_enable || blur)
+		return hfi_buffer_dpb_enc_ar50lt(dswidth, dsheight, is_ten_bit);
+
+	return 0;
+}
+
 static inline u32 hfi_buffer_scratch1_enc(u32 frame_width, u32 frame_height,
 					  u32 lcu_size, u32 num_ref,
 					  bool ten_bit, u32 num_vpp_pipes,
@@ -1693,6 +2039,16 @@ static u32 iris_vpu_enc_vpss_size(struct iris_inst *inst)
 	return hfi_buffer_vpss_enc(width, height, ds_enable, 0, 0);
 }
 
+static u32 iris_vpu_ar50lt_enc_vpss_size(struct iris_inst *inst)
+{
+	u32 ds_enable = is_scaling_enabled(inst);
+	struct v4l2_format *f = inst->fmt_dst;
+	u32 height = f->fmt.pix_mp.height;
+	u32 width = f->fmt.pix_mp.width;
+
+	return hfi_buffer_vpss_enc_ar50lt(width, height, ds_enable, 0, 0);
+}
+
 static inline u32 size_dpb_opb(u32 height, u32 lcu_size)
 {
 	u32 max_tile_height = ((height + lcu_size - 1) / lcu_size) * lcu_size + 8;
@@ -2148,6 +2504,51 @@ u32 iris_vpu_ar50lt_gen1_buf_size(struct iris_inst *inst, enum iris_buffer_type
 	return inst->buffers[buffer_type].size;
 }
 
+u32 iris_vpu_ar50lt_gen2_buf_size(struct iris_inst *inst, enum iris_buffer_type buffer_type)
+{
+	const struct iris_vpu_buf_type_handle *buf_type_handle_arr = NULL;
+	u32 size = 0, buf_type_handle_size = 0, i;
+
+	static const struct iris_vpu_buf_type_handle dec_internal_buf_type_handle[] = {
+		{BUF_BIN,         iris_vpu_ar50lt_dec_bin_size      },
+		{BUF_COMV,        iris_vpu_dec_comv_size            },
+		{BUF_NON_COMV,    iris_vpu_ar50lt_dec_non_comv_size },
+		{BUF_LINE,        iris_vpu_ar50lt_dec_line_size     },
+		{BUF_PERSIST,     iris_vpu_ar50lt_dec_persist_size  },
+		{BUF_DPB,         iris_vpu_dec_dpb_size             },
+		{BUF_SCRATCH_1,   iris_vpu_ar50lt_dec_scratch1_size },
+		{BUF_PARTIAL,     iris_vpu_dec_partial_size         },
+	};
+
+	static const struct iris_vpu_buf_type_handle enc_internal_buf_type_handle[] = {
+		{BUF_BIN,         iris_vpu_enc_bin_size             },
+		{BUF_COMV,        iris_vpu_enc_comv_size            },
+		{BUF_NON_COMV,    iris_vpu_enc_non_comv_size        },
+		{BUF_LINE,        iris_vpu_enc_line_size            },
+		{BUF_ARP,         iris_vpu_enc_arp_size             },
+		{BUF_VPSS,        iris_vpu_ar50lt_enc_vpss_size     },
+		{BUF_SCRATCH_1,   iris_vpu_enc_scratch1_size        },
+		{BUF_SCRATCH_2,   iris_vpu_enc_scratch2_size        },
+	};
+
+	if (inst->domain == DECODER) {
+		buf_type_handle_size = ARRAY_SIZE(dec_internal_buf_type_handle);
+		buf_type_handle_arr = dec_internal_buf_type_handle;
+	} else if (inst->domain == ENCODER) {
+		buf_type_handle_size = ARRAY_SIZE(enc_internal_buf_type_handle);
+		buf_type_handle_arr = enc_internal_buf_type_handle;
+	}
+
+	for (i = 0; i < buf_type_handle_size; i++) {
+		if (buf_type_handle_arr[i].type == buffer_type) {
+			size = buf_type_handle_arr[i].handle(inst);
+			break;
+		}
+	}
+
+	return size;
+}
+
 static u32 internal_buffer_count(struct iris_inst *inst,
 				 enum iris_buffer_type buffer_type)
 {
diff --git a/drivers/media/platform/qcom/iris/iris_vpu_buffer.h b/drivers/media/platform/qcom/iris/iris_vpu_buffer.h
index 1d07137c70cd..2085e316a6bd 100644
--- a/drivers/media/platform/qcom/iris/iris_vpu_buffer.h
+++ b/drivers/media/platform/qcom/iris/iris_vpu_buffer.h
@@ -61,17 +61,26 @@ struct iris_inst;
 #define MAX_FE_NBR_CTRL_LCU16_LINE_BUFFER_SIZE 64
 #define MAX_SE_NBR_CTRL_LCU16_LINE_BUFFER_SIZE (128 / 8)
 #define MAX_SE_NBR_CTRL_LCU32_LINE_BUFFER_SIZE (128 / 8)
+#define MAX_SE_NBR_CTRL_LCU16_LINE_BUFFER_SIZE_AR50LT (8 / 8)
+#define MAX_SE_NBR_CTRL_LCU32_LINE_BUFFER_SIZE_AR50LT (16 / 8)
+#define MAX_SE_NBR_CTRL_LCU64_LINE_BUFFER_SIZE_AR50LT (32 / 8)
 #define VP9_UDC_HEADER_BUF_SIZE	(3 * 128)
 
 #define SIZE_SEI_USERDATA			4096
 #define SIZE_DOLBY_RPU_METADATA (41 * 1024)
 #define H264_CABAC_HDR_RATIO_HD_TOT	1
 #define H264_CABAC_RES_RATIO_HD_TOT	3
+#define H264_CABAC_HDR_RATIO_SM_TOT 1
+#define H264_CABAC_RES_RATIO_SM_TOT 2
 #define H265D_MAX_SLICE	3600
+#define H265D_MAX_SLICE_AR50LT	600
 #define SIZE_H265D_HW_PIC_T SIZE_H264D_HW_PIC_T
 #define H265_CABAC_HDR_RATIO_HD_TOT 2
 #define H265_CABAC_RES_RATIO_HD_TOT 2
+#define H265_CABAC_HDR_RATIO_SM_TOT 1
+#define H265_CABAC_RES_RATIO_SM_TOT 6
 #define SIZE_H265D_VPP_CMD_PER_BUF (256)
+#define SIZE_H265D_VPP_CMD_PER_BUF_AR50LT (192)
 #define SIZE_THREE_DIMENSION_USERDATA 768
 #define SIZE_H265D_ARP 9728
 
@@ -81,6 +90,7 @@ struct iris_inst;
 #define VPX_DECODER_FRAME_BIN_DENOMINATOR 2
 
 #define VPX_DECODER_FRAME_BIN_RES_BUDGET_RATIO (3 / 2)
+#define VPX_DECODER_FRAME_BIN_BUFFER_SIZE (1024 * 1024)
 
 #define SIZE_H264D_HW_PIC_T		(BIT(11))
 
@@ -99,6 +109,7 @@ struct iris_inst;
 #define MAX_FE_NBR_CTRL_LCU64_LINE_BUFFER_SIZE	64
 #define MAX_SE_NBR_CTRL_LCU64_LINE_BUFFER_SIZE	16
 #define MAX_PE_NBR_DATA_LCU64_LINE_BUFFER_SIZE	384
+#define MAX_PE_NBR_DATA_LCU64_LINE_BUFFER_SIZE_AR50LT	176
 #define MAX_FE_NBR_DATA_LUMA_LINE_BUFFER_SIZE	640
 
 #define AV1_CABAC_HDR_RATIO_HD_TOT 2
@@ -155,11 +166,21 @@ static inline u32 size_h264d_lb_fe_top_data(u32 frame_width)
 	return MAX_FE_NBR_DATA_LUMA_LINE_BUFFER_SIZE * ALIGN(frame_width, 16) * 3;
 }
 
+static inline u32 size_h264d_lb_fe_top_data_ar50lt(u32 frame_width)
+{
+	return 16 * ALIGN(frame_width, 16) * 2;
+}
+
 static inline u32 size_h264d_lb_fe_top_ctrl(u32 frame_width)
 {
 	return MAX_FE_NBR_CTRL_LCU64_LINE_BUFFER_SIZE * DIV_ROUND_UP(frame_width, 16);
 }
 
+static inline u32 size_h264d_lb_fe_top_ctrl_ar50lt(u32 frame_width)
+{
+	return 16 * DIV_ROUND_UP(frame_width, 16);
+}
+
 static inline u32 size_h264d_lb_fe_left_ctrl(u32 frame_height)
 {
 	return MAX_FE_NBR_CTRL_LCU64_LINE_BUFFER_SIZE * DIV_ROUND_UP(frame_height, 16);
@@ -170,16 +191,31 @@ static inline u32 size_h264d_lb_se_top_ctrl(u32 frame_width)
 	return MAX_SE_NBR_CTRL_LCU64_LINE_BUFFER_SIZE * DIV_ROUND_UP(frame_width, 16);
 }
 
+static inline u32 size_h264d_lb_se_top_ctrl_ar50lt(u32 frame_width)
+{
+	return MAX_SE_NBR_CTRL_LCU64_LINE_BUFFER_SIZE_AR50LT * DIV_ROUND_UP(frame_width, 16);
+}
+
 static inline u32 size_h264d_lb_se_left_ctrl(u32 frame_height)
 {
 	return MAX_SE_NBR_CTRL_LCU64_LINE_BUFFER_SIZE * DIV_ROUND_UP(frame_height, 16);
 }
 
+static inline u32 size_h264d_lb_se_left_ctrl_ar50lt(u32 frame_height)
+{
+	return MAX_SE_NBR_CTRL_LCU64_LINE_BUFFER_SIZE_AR50LT * DIV_ROUND_UP(frame_height, 16);
+}
+
 static inline u32 size_h264d_lb_pe_top_data(u32 frame_width)
 {
 	return MAX_PE_NBR_DATA_LCU64_LINE_BUFFER_SIZE * DIV_ROUND_UP(frame_width, 16);
 }
 
+static inline u32 size_h264d_lb_pe_top_data_ar50lt(u32 frame_width)
+{
+	return 64 * DIV_ROUND_UP(frame_width, 16);
+}
+
 static inline u32 size_h264d_lb_vsp_top(u32 frame_width)
 {
 	return (DIV_ROUND_UP(frame_width, 16) << 7);
@@ -289,6 +325,7 @@ u32 iris_vpu_buf_size(struct iris_inst *inst, enum iris_buffer_type buffer_type)
 u32 iris_vpu33_buf_size(struct iris_inst *inst, enum iris_buffer_type buffer_type);
 u32 iris_vpu4x_buf_size(struct iris_inst *inst, enum iris_buffer_type buffer_type);
 u32 iris_vpu_ar50lt_gen1_buf_size(struct iris_inst *inst, enum iris_buffer_type buffer_type);
+u32 iris_vpu_ar50lt_gen2_buf_size(struct iris_inst *inst, enum iris_buffer_type buffer_type);
 int iris_vpu_buf_count(struct iris_inst *inst, enum iris_buffer_type buffer_type);
 
 #endif

-- 
2.47.3


^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [PATCH v2 14/16] media: iris: add Gen2 firmware support on the Agatti platform
  2026-05-13 12:45 [PATCH v2 00/16] media: iris: Add AR50LT core support and enable Agatti platform Dmitry Baryshkov
                   ` (12 preceding siblings ...)
  2026-05-13 12:45 ` [PATCH v2 13/16] media: iris: Introduce buffer size calculations for AR50LT Dmitry Baryshkov
@ 2026-05-13 12:45 ` Dmitry Baryshkov
  2026-05-13 12:45 ` [PATCH v2 15/16] media: venus: skip QCM2290 if Iris driver is enabled Dmitry Baryshkov
                   ` (2 subsequent siblings)
  16 siblings, 0 replies; 19+ messages in thread
From: Dmitry Baryshkov @ 2026-05-13 12:45 UTC (permalink / raw)
  To: Vikash Garodia, Abhinav Kumar, Bryan O'Donoghue,
	Mauro Carvalho Chehab, Bjorn Andersson, Konrad Dybcio,
	Rob Herring, Krzysztof Kozlowski, Conor Dooley, Vishnu Reddy
  Cc: linux-media, linux-arm-msm, linux-kernel, devicetree,
	Dikshita Agarwal

From: Dikshita Agarwal <dikshita.agarwal@oss.qualcomm.com>

Agatti platform is using HFI Gen1 firmware, which is considered to be
legacy firmware branch. Follow the example of the SC7280 platform and
extend the driver with supporting both HFI Gen1 and Gen2 firmwares for
this platform. Like HFI Gen1 this firmware doesn't have PIPE property
(but unlike Gen1 buffer sizes are calculated on the driver side).

Signed-off-by: Dikshita Agarwal <dikshita.agarwal@oss.qualcomm.com>
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
---
 drivers/media/platform/qcom/iris/iris_hfi_gen2.c   | 613 +++++++++++++++++++++
 .../platform/qcom/iris/iris_platform_common.h      |   1 +
 .../platform/qcom/iris/iris_platform_vpu_ar50lt.c  |  11 +-
 3 files changed, 623 insertions(+), 2 deletions(-)

diff --git a/drivers/media/platform/qcom/iris/iris_hfi_gen2.c b/drivers/media/platform/qcom/iris/iris_hfi_gen2.c
index ce8490d64854..61061d17afe5 100644
--- a/drivers/media/platform/qcom/iris/iris_hfi_gen2.c
+++ b/drivers/media/platform/qcom/iris/iris_hfi_gen2.c
@@ -894,3 +894,616 @@ const struct iris_firmware_data iris_hfi_gen2_data = {
 	.enc_op_int_buf_tbl = sm8550_enc_op_int_buf_tbl,
 	.enc_op_int_buf_tbl_size = ARRAY_SIZE(sm8550_enc_op_int_buf_tbl),
 };
+
+static const struct platform_inst_fw_cap inst_fw_cap_gen2_ar50lt_dec[] = {
+	{
+		.cap_id = PROFILE_H264,
+		.min = V4L2_MPEG_VIDEO_H264_PROFILE_BASELINE,
+		.max = V4L2_MPEG_VIDEO_H264_PROFILE_CONSTRAINED_HIGH,
+		.step_or_mask = BIT(V4L2_MPEG_VIDEO_H264_PROFILE_BASELINE) |
+				BIT(V4L2_MPEG_VIDEO_H264_PROFILE_CONSTRAINED_BASELINE) |
+				BIT(V4L2_MPEG_VIDEO_H264_PROFILE_MAIN) |
+				BIT(V4L2_MPEG_VIDEO_H264_PROFILE_HIGH) |
+				BIT(V4L2_MPEG_VIDEO_H264_PROFILE_CONSTRAINED_HIGH),
+		.value = V4L2_MPEG_VIDEO_H264_PROFILE_HIGH,
+		.hfi_id = HFI_PROP_PROFILE,
+		.flags = CAP_FLAG_OUTPUT_PORT | CAP_FLAG_MENU,
+		.set = iris_set_u32_enum,
+	},
+	{
+		.cap_id = PROFILE_HEVC,
+		.min = V4L2_MPEG_VIDEO_HEVC_PROFILE_MAIN,
+		.max = V4L2_MPEG_VIDEO_HEVC_PROFILE_MAIN_STILL_PICTURE,
+		.step_or_mask = BIT(V4L2_MPEG_VIDEO_HEVC_PROFILE_MAIN) |
+				BIT(V4L2_MPEG_VIDEO_HEVC_PROFILE_MAIN_STILL_PICTURE),
+		.value = V4L2_MPEG_VIDEO_HEVC_PROFILE_MAIN,
+		.hfi_id = HFI_PROP_PROFILE,
+		.flags = CAP_FLAG_OUTPUT_PORT | CAP_FLAG_MENU,
+		.set = iris_set_u32_enum,
+	},
+	{
+		.cap_id = PROFILE_VP9,
+		.min = V4L2_MPEG_VIDEO_VP9_PROFILE_0,
+		.max = V4L2_MPEG_VIDEO_VP9_PROFILE_0,
+		.step_or_mask = BIT(V4L2_MPEG_VIDEO_VP9_PROFILE_0),
+		.value = V4L2_MPEG_VIDEO_VP9_PROFILE_0,
+		.hfi_id = HFI_PROP_PROFILE,
+		.flags = CAP_FLAG_OUTPUT_PORT | CAP_FLAG_MENU,
+		.set = iris_set_u32_enum,
+	},
+	{
+		.cap_id = LEVEL_H264,
+		.min = V4L2_MPEG_VIDEO_H264_LEVEL_1_0,
+		.max = V4L2_MPEG_VIDEO_H264_LEVEL_4_2,
+		.step_or_mask = BIT(V4L2_MPEG_VIDEO_H264_LEVEL_1_0) |
+				BIT(V4L2_MPEG_VIDEO_H264_LEVEL_1B) |
+				BIT(V4L2_MPEG_VIDEO_H264_LEVEL_1_1) |
+				BIT(V4L2_MPEG_VIDEO_H264_LEVEL_1_2) |
+				BIT(V4L2_MPEG_VIDEO_H264_LEVEL_1_3) |
+				BIT(V4L2_MPEG_VIDEO_H264_LEVEL_2_0) |
+				BIT(V4L2_MPEG_VIDEO_H264_LEVEL_2_1) |
+				BIT(V4L2_MPEG_VIDEO_H264_LEVEL_2_2) |
+				BIT(V4L2_MPEG_VIDEO_H264_LEVEL_3_0) |
+				BIT(V4L2_MPEG_VIDEO_H264_LEVEL_3_1) |
+				BIT(V4L2_MPEG_VIDEO_H264_LEVEL_3_2) |
+				BIT(V4L2_MPEG_VIDEO_H264_LEVEL_4_0) |
+				BIT(V4L2_MPEG_VIDEO_H264_LEVEL_4_1) |
+				BIT(V4L2_MPEG_VIDEO_H264_LEVEL_4_2),
+		.value = V4L2_MPEG_VIDEO_H264_LEVEL_4_2,
+		.hfi_id = HFI_PROP_LEVEL,
+		.flags = CAP_FLAG_OUTPUT_PORT | CAP_FLAG_MENU,
+		.set = iris_set_u32_enum,
+	},
+	{
+		.cap_id = LEVEL_HEVC,
+		.min = V4L2_MPEG_VIDEO_HEVC_LEVEL_1,
+		.max = V4L2_MPEG_VIDEO_HEVC_LEVEL_4_1,
+		.step_or_mask = BIT(V4L2_MPEG_VIDEO_HEVC_LEVEL_1) |
+				BIT(V4L2_MPEG_VIDEO_HEVC_LEVEL_2) |
+				BIT(V4L2_MPEG_VIDEO_HEVC_LEVEL_2_1) |
+				BIT(V4L2_MPEG_VIDEO_HEVC_LEVEL_3) |
+				BIT(V4L2_MPEG_VIDEO_HEVC_LEVEL_3_1) |
+				BIT(V4L2_MPEG_VIDEO_HEVC_LEVEL_4) |
+				BIT(V4L2_MPEG_VIDEO_HEVC_LEVEL_4_1),
+		.value = V4L2_MPEG_VIDEO_HEVC_LEVEL_4_1,
+		.hfi_id = HFI_PROP_LEVEL,
+		.flags = CAP_FLAG_OUTPUT_PORT | CAP_FLAG_MENU,
+		.set = iris_set_u32_enum,
+	},
+	{
+		.cap_id = LEVEL_VP9,
+		.min = V4L2_MPEG_VIDEO_VP9_LEVEL_1_0,
+		.max = V4L2_MPEG_VIDEO_VP9_LEVEL_4_1,
+		.step_or_mask = BIT(V4L2_MPEG_VIDEO_VP9_LEVEL_1_0) |
+				BIT(V4L2_MPEG_VIDEO_VP9_LEVEL_1_1) |
+				BIT(V4L2_MPEG_VIDEO_VP9_LEVEL_2_0) |
+				BIT(V4L2_MPEG_VIDEO_VP9_LEVEL_2_1) |
+				BIT(V4L2_MPEG_VIDEO_VP9_LEVEL_3_0) |
+				BIT(V4L2_MPEG_VIDEO_VP9_LEVEL_3_1) |
+				BIT(V4L2_MPEG_VIDEO_VP9_LEVEL_4_0) |
+				BIT(V4L2_MPEG_VIDEO_VP9_LEVEL_4_1),
+		.value = V4L2_MPEG_VIDEO_VP9_LEVEL_4_1,
+		.hfi_id = HFI_PROP_LEVEL,
+		.flags = CAP_FLAG_OUTPUT_PORT | CAP_FLAG_MENU,
+		.set = iris_set_u32_enum,
+	},
+	{
+		.cap_id = TIER,
+		.min = V4L2_MPEG_VIDEO_HEVC_TIER_MAIN,
+		.max = V4L2_MPEG_VIDEO_HEVC_TIER_HIGH,
+		.step_or_mask = BIT(V4L2_MPEG_VIDEO_HEVC_TIER_MAIN) |
+				BIT(V4L2_MPEG_VIDEO_HEVC_TIER_HIGH),
+		.value = V4L2_MPEG_VIDEO_HEVC_TIER_HIGH,
+		.hfi_id = HFI_PROP_TIER,
+		.flags = CAP_FLAG_OUTPUT_PORT | CAP_FLAG_MENU,
+		.set = iris_set_u32_enum,
+	},
+	{
+		.cap_id = INPUT_BUF_HOST_MAX_COUNT,
+		.min = DEFAULT_MAX_HOST_BUF_COUNT,
+		.max = DEFAULT_MAX_HOST_BURST_BUF_COUNT,
+		.step_or_mask = 1,
+		.value = DEFAULT_MAX_HOST_BUF_COUNT,
+		.hfi_id = HFI_PROP_BUFFER_HOST_MAX_COUNT,
+		.flags = CAP_FLAG_INPUT_PORT,
+		.set = iris_set_u32,
+	},
+	{
+		.cap_id = STAGE,
+		.min = STAGE_1,
+		.max = STAGE_2,
+		.step_or_mask = 1,
+		.value = STAGE_2,
+		.hfi_id = HFI_PROP_STAGE,
+		.set = iris_set_stage,
+	},
+	{
+		.cap_id = POC,
+		.min = 0,
+		.max = 2,
+		.step_or_mask = 1,
+		.value = 1,
+		.hfi_id = HFI_PROP_PIC_ORDER_CNT_TYPE,
+	},
+	{
+		.cap_id = CODED_FRAMES,
+		.min = CODED_FRAMES_PROGRESSIVE,
+		.max = CODED_FRAMES_PROGRESSIVE,
+		.step_or_mask = 0,
+		.value = CODED_FRAMES_PROGRESSIVE,
+		.hfi_id = HFI_PROP_CODED_FRAMES,
+	},
+	{
+		.cap_id = BIT_DEPTH,
+		.min = BIT_DEPTH_8,
+		.max = BIT_DEPTH_8,
+		.step_or_mask = 1,
+		.value = BIT_DEPTH_8,
+		.hfi_id = HFI_PROP_LUMA_CHROMA_BIT_DEPTH,
+	},
+	{
+		.cap_id = RAP_FRAME,
+		.min = 0,
+		.max = 1,
+		.step_or_mask = 1,
+		.value = 1,
+		.hfi_id = HFI_PROP_DEC_START_FROM_RAP_FRAME,
+		.flags = CAP_FLAG_INPUT_PORT,
+		.set = iris_set_u32,
+	},
+};
+
+static const struct platform_inst_fw_cap inst_fw_cap_gen2_ar50lt_enc[] = {
+	{
+		.cap_id = PROFILE_H264,
+		.min = V4L2_MPEG_VIDEO_H264_PROFILE_BASELINE,
+		.max = V4L2_MPEG_VIDEO_H264_PROFILE_CONSTRAINED_HIGH,
+		.step_or_mask = BIT(V4L2_MPEG_VIDEO_H264_PROFILE_BASELINE) |
+				BIT(V4L2_MPEG_VIDEO_H264_PROFILE_CONSTRAINED_HIGH) |
+				BIT(V4L2_MPEG_VIDEO_H264_PROFILE_CONSTRAINED_BASELINE) |
+				BIT(V4L2_MPEG_VIDEO_H264_PROFILE_MAIN) |
+				BIT(V4L2_MPEG_VIDEO_H264_PROFILE_HIGH),
+		.value = V4L2_MPEG_VIDEO_H264_PROFILE_HIGH,
+		.hfi_id = HFI_PROP_PROFILE,
+		.flags = CAP_FLAG_OUTPUT_PORT | CAP_FLAG_MENU,
+		.set = iris_set_profile,
+	},
+	{
+		.cap_id = PROFILE_HEVC,
+		.min = V4L2_MPEG_VIDEO_HEVC_PROFILE_MAIN,
+		.max = V4L2_MPEG_VIDEO_HEVC_PROFILE_MAIN_STILL_PICTURE,
+		.step_or_mask = BIT(V4L2_MPEG_VIDEO_HEVC_PROFILE_MAIN) |
+				BIT(V4L2_MPEG_VIDEO_HEVC_PROFILE_MAIN_STILL_PICTURE),
+		.value = V4L2_MPEG_VIDEO_HEVC_PROFILE_MAIN,
+		.hfi_id = HFI_PROP_PROFILE,
+		.flags = CAP_FLAG_OUTPUT_PORT | CAP_FLAG_MENU,
+		.set = iris_set_profile,
+	},
+	{
+		.cap_id = LEVEL_H264,
+		.min = V4L2_MPEG_VIDEO_H264_LEVEL_1_0,
+		.max = V4L2_MPEG_VIDEO_H264_LEVEL_4_2,
+		.step_or_mask = BIT(V4L2_MPEG_VIDEO_H264_LEVEL_1_0) |
+				BIT(V4L2_MPEG_VIDEO_H264_LEVEL_1B) |
+				BIT(V4L2_MPEG_VIDEO_H264_LEVEL_1_1) |
+				BIT(V4L2_MPEG_VIDEO_H264_LEVEL_1_2) |
+				BIT(V4L2_MPEG_VIDEO_H264_LEVEL_1_3) |
+				BIT(V4L2_MPEG_VIDEO_H264_LEVEL_2_0) |
+				BIT(V4L2_MPEG_VIDEO_H264_LEVEL_2_1) |
+				BIT(V4L2_MPEG_VIDEO_H264_LEVEL_2_2) |
+				BIT(V4L2_MPEG_VIDEO_H264_LEVEL_3_0) |
+				BIT(V4L2_MPEG_VIDEO_H264_LEVEL_3_1) |
+				BIT(V4L2_MPEG_VIDEO_H264_LEVEL_3_2) |
+				BIT(V4L2_MPEG_VIDEO_H264_LEVEL_4_0) |
+				BIT(V4L2_MPEG_VIDEO_H264_LEVEL_4_1) |
+				BIT(V4L2_MPEG_VIDEO_H264_LEVEL_4_2),
+		.value = V4L2_MPEG_VIDEO_H264_LEVEL_4_2,
+		.hfi_id = HFI_PROP_LEVEL,
+		.flags = CAP_FLAG_OUTPUT_PORT | CAP_FLAG_MENU,
+		.set = iris_set_level,
+	},
+	{
+		.cap_id = LEVEL_HEVC,
+		.min = V4L2_MPEG_VIDEO_HEVC_LEVEL_1,
+		.max = V4L2_MPEG_VIDEO_HEVC_LEVEL_4_1,
+		.step_or_mask = BIT(V4L2_MPEG_VIDEO_HEVC_LEVEL_1) |
+				BIT(V4L2_MPEG_VIDEO_HEVC_LEVEL_2) |
+				BIT(V4L2_MPEG_VIDEO_HEVC_LEVEL_2_1) |
+				BIT(V4L2_MPEG_VIDEO_HEVC_LEVEL_3) |
+				BIT(V4L2_MPEG_VIDEO_HEVC_LEVEL_3_1) |
+				BIT(V4L2_MPEG_VIDEO_HEVC_LEVEL_4) |
+				BIT(V4L2_MPEG_VIDEO_HEVC_LEVEL_4_1),
+		.value = V4L2_MPEG_VIDEO_HEVC_LEVEL_4_1,
+		.hfi_id = HFI_PROP_LEVEL,
+		.flags = CAP_FLAG_OUTPUT_PORT | CAP_FLAG_MENU,
+		.set = iris_set_level,
+	},
+	{
+		.cap_id = STAGE,
+		.min = STAGE_1,
+		.max = STAGE_2,
+		.step_or_mask = 1,
+		.value = STAGE_2,
+		.hfi_id = HFI_PROP_STAGE,
+		.set = iris_set_stage,
+	},
+	{
+		.cap_id = HEADER_MODE,
+		.min = V4L2_MPEG_VIDEO_HEADER_MODE_SEPARATE,
+		.max = V4L2_MPEG_VIDEO_HEADER_MODE_JOINED_WITH_1ST_FRAME,
+		.step_or_mask = BIT(V4L2_MPEG_VIDEO_HEADER_MODE_SEPARATE) |
+				BIT(V4L2_MPEG_VIDEO_HEADER_MODE_JOINED_WITH_1ST_FRAME),
+		.value = V4L2_MPEG_VIDEO_HEADER_MODE_JOINED_WITH_1ST_FRAME,
+		.hfi_id = HFI_PROP_SEQ_HEADER_MODE,
+		.flags = CAP_FLAG_OUTPUT_PORT | CAP_FLAG_MENU,
+		.set = iris_set_header_mode_gen2,
+	},
+	{
+		.cap_id = PREPEND_SPSPPS_TO_IDR,
+		.min = 0,
+		.max = 1,
+		.step_or_mask = 1,
+		.value = 0,
+	},
+	{
+		.cap_id = BITRATE,
+		.min = 1,
+		.max = BITRATE_MAX_AR50LT,
+		.step_or_mask = 1,
+		.value = BITRATE_DEFAULT_AR50LT,
+		.hfi_id = HFI_PROP_TOTAL_BITRATE,
+		.flags = CAP_FLAG_OUTPUT_PORT | CAP_FLAG_INPUT_PORT |
+			CAP_FLAG_DYNAMIC_ALLOWED,
+		.set = iris_set_bitrate,
+	},
+	{
+		.cap_id = BITRATE_PEAK,
+		.min = 1,
+		.max = BITRATE_MAX_AR50LT,
+		.step_or_mask = 1,
+		.value = BITRATE_DEFAULT_AR50LT,
+		.hfi_id = HFI_PROP_TOTAL_PEAK_BITRATE,
+		.flags = CAP_FLAG_OUTPUT_PORT | CAP_FLAG_INPUT_PORT |
+			CAP_FLAG_DYNAMIC_ALLOWED,
+		.set = iris_set_peak_bitrate,
+	},
+	{
+		.cap_id = BITRATE_MODE,
+		.min = V4L2_MPEG_VIDEO_BITRATE_MODE_VBR,
+		.max = V4L2_MPEG_VIDEO_BITRATE_MODE_CBR,
+		.step_or_mask = BIT(V4L2_MPEG_VIDEO_BITRATE_MODE_VBR) |
+				BIT(V4L2_MPEG_VIDEO_BITRATE_MODE_CBR),
+		.value = V4L2_MPEG_VIDEO_BITRATE_MODE_VBR,
+		.hfi_id = HFI_PROP_RATE_CONTROL,
+		.flags = CAP_FLAG_OUTPUT_PORT | CAP_FLAG_MENU,
+		.set = iris_set_bitrate_mode_gen2,
+	},
+	{
+		.cap_id = FRAME_SKIP_MODE,
+		.min = V4L2_MPEG_VIDEO_FRAME_SKIP_MODE_DISABLED,
+		.max = V4L2_MPEG_VIDEO_FRAME_SKIP_MODE_BUF_LIMIT,
+		.step_or_mask = BIT(V4L2_MPEG_VIDEO_FRAME_SKIP_MODE_DISABLED) |
+				BIT(V4L2_MPEG_VIDEO_FRAME_SKIP_MODE_LEVEL_LIMIT) |
+				BIT(V4L2_MPEG_VIDEO_FRAME_SKIP_MODE_BUF_LIMIT),
+		.value = V4L2_MPEG_VIDEO_FRAME_SKIP_MODE_DISABLED,
+		.flags = CAP_FLAG_OUTPUT_PORT | CAP_FLAG_MENU,
+	},
+	{
+		.cap_id = FRAME_RC_ENABLE,
+		.min = 0,
+		.max = 1,
+		.step_or_mask = 1,
+		.value = 1,
+	},
+	{
+		.cap_id = GOP_SIZE,
+		.min = 0,
+		.max = INT_MAX,
+		.step_or_mask = 1,
+		.value = 2 * DEFAULT_FPS - 1,
+		.hfi_id = HFI_PROP_MAX_GOP_FRAMES,
+		.flags = CAP_FLAG_OUTPUT_PORT | CAP_FLAG_INPUT_PORT |
+			CAP_FLAG_DYNAMIC_ALLOWED,
+		.set = iris_set_u32,
+	},
+	{
+		.cap_id = ENTROPY_MODE,
+		.min = V4L2_MPEG_VIDEO_H264_ENTROPY_MODE_CAVLC,
+		.max = V4L2_MPEG_VIDEO_H264_ENTROPY_MODE_CABAC,
+		.step_or_mask = BIT(V4L2_MPEG_VIDEO_H264_ENTROPY_MODE_CAVLC) |
+				BIT(V4L2_MPEG_VIDEO_H264_ENTROPY_MODE_CABAC),
+		.value = V4L2_MPEG_VIDEO_H264_ENTROPY_MODE_CABAC,
+		.hfi_id = HFI_PROP_CABAC_SESSION,
+		.flags = CAP_FLAG_OUTPUT_PORT | CAP_FLAG_MENU,
+		.set = iris_set_entropy_mode_gen2,
+	},
+	{
+		.cap_id = MIN_FRAME_QP_H264,
+		.min = MIN_QP_8BIT_AR50LT,
+		.max = MAX_QP,
+		.step_or_mask = 1,
+		.value = MIN_QP_8BIT_AR50LT,
+		.hfi_id = HFI_PROP_MIN_QP_PACKED,
+		.flags = CAP_FLAG_OUTPUT_PORT,
+		.set = iris_set_min_qp,
+	},
+	{
+		.cap_id = MIN_FRAME_QP_HEVC,
+		.min = MIN_QP_8BIT_AR50LT,
+		.max = MAX_QP,
+		.step_or_mask = 1,
+		.value = MIN_QP_8BIT_AR50LT,
+		.hfi_id = HFI_PROP_MIN_QP_PACKED,
+		.flags = CAP_FLAG_OUTPUT_PORT,
+		.set = iris_set_min_qp,
+	},
+	{
+		.cap_id = MAX_FRAME_QP_H264,
+		.min = MIN_QP_8BIT_AR50LT,
+		.max = MAX_QP,
+		.step_or_mask = 1,
+		.value = MAX_QP,
+		.hfi_id = HFI_PROP_MAX_QP_PACKED,
+		.flags = CAP_FLAG_OUTPUT_PORT,
+		.set = iris_set_max_qp,
+	},
+	{
+		.cap_id = MAX_FRAME_QP_HEVC,
+		.min = MIN_QP_8BIT_AR50LT,
+		.max = MAX_QP,
+		.step_or_mask = 1,
+		.value = MAX_QP,
+		.hfi_id = HFI_PROP_MAX_QP_PACKED,
+		.flags = CAP_FLAG_OUTPUT_PORT,
+		.set = iris_set_max_qp,
+	},
+	{
+		.cap_id = I_FRAME_MIN_QP_H264,
+		.min = MIN_QP_8BIT_AR50LT,
+		.max = MAX_QP,
+		.step_or_mask = 1,
+		.value = MIN_QP_8BIT_AR50LT,
+	},
+	{
+		.cap_id = I_FRAME_MIN_QP_HEVC,
+		.min = MIN_QP_8BIT_AR50LT,
+		.max = MAX_QP,
+		.step_or_mask = 1,
+		.value = MIN_QP_8BIT_AR50LT,
+	},
+	{
+		.cap_id = P_FRAME_MIN_QP_H264,
+		.min = MIN_QP_8BIT_AR50LT,
+		.max = MAX_QP,
+		.step_or_mask = 1,
+		.value = MIN_QP_8BIT_AR50LT,
+	},
+	{
+		.cap_id = P_FRAME_MIN_QP_HEVC,
+		.min = MIN_QP_8BIT_AR50LT,
+		.max = MAX_QP,
+		.step_or_mask = 1,
+		.value = MIN_QP_8BIT_AR50LT,
+	},
+	{
+		.cap_id = B_FRAME_MIN_QP_H264,
+		.min = MIN_QP_8BIT_AR50LT,
+		.max = MAX_QP,
+		.step_or_mask = 1,
+		.value = MIN_QP_8BIT_AR50LT,
+	},
+	{
+		.cap_id = B_FRAME_MIN_QP_HEVC,
+		.min = MIN_QP_8BIT_AR50LT,
+		.max = MAX_QP,
+		.step_or_mask = 1,
+		.value = MIN_QP_8BIT_AR50LT,
+	},
+	{
+		.cap_id = I_FRAME_MAX_QP_H264,
+		.min = MIN_QP_8BIT_AR50LT,
+		.max = MAX_QP,
+		.step_or_mask = 1,
+		.value = MAX_QP,
+	},
+	{
+		.cap_id = I_FRAME_MAX_QP_HEVC,
+		.min = MIN_QP_8BIT_AR50LT,
+		.max = MAX_QP,
+		.step_or_mask = 1,
+		.value = MAX_QP,
+	},
+	{
+		.cap_id = P_FRAME_MAX_QP_H264,
+		.min = MIN_QP_8BIT_AR50LT,
+		.max = MAX_QP,
+		.step_or_mask = 1,
+		.value = MAX_QP,
+	},
+	{
+		.cap_id = P_FRAME_MAX_QP_HEVC,
+		.min = MIN_QP_8BIT_AR50LT,
+		.max = MAX_QP,
+		.step_or_mask = 1,
+		.value = MAX_QP,
+	},
+	{
+		.cap_id = B_FRAME_MAX_QP_H264,
+		.min = MIN_QP_8BIT_AR50LT,
+		.max = MAX_QP,
+		.step_or_mask = 1,
+		.value = MAX_QP,
+	},
+	{
+		.cap_id = B_FRAME_MAX_QP_HEVC,
+		.min = MIN_QP_8BIT_AR50LT,
+		.max = MAX_QP,
+		.step_or_mask = 1,
+		.value = MAX_QP,
+	},
+	{
+		.cap_id = I_FRAME_QP_H264,
+		.min = MIN_QP_8BIT_AR50LT,
+		.max = MAX_QP,
+		.step_or_mask = 1,
+		.value = DEFAULT_QP,
+		.hfi_id = HFI_PROP_QP_PACKED,
+		.flags = CAP_FLAG_OUTPUT_PORT | CAP_FLAG_INPUT_PORT |
+			CAP_FLAG_DYNAMIC_ALLOWED,
+		.set = iris_set_frame_qp,
+	},
+	{
+		.cap_id = I_FRAME_QP_HEVC,
+		.min = MIN_QP_8BIT_AR50LT,
+		.max = MAX_QP,
+		.step_or_mask = 1,
+		.value = DEFAULT_QP,
+		.hfi_id = HFI_PROP_QP_PACKED,
+		.flags = CAP_FLAG_OUTPUT_PORT | CAP_FLAG_INPUT_PORT |
+			CAP_FLAG_DYNAMIC_ALLOWED,
+		.set = iris_set_frame_qp,
+	},
+	{
+		.cap_id = P_FRAME_QP_H264,
+		.min = MIN_QP_8BIT_AR50LT,
+		.max = MAX_QP,
+		.step_or_mask = 1,
+		.value = DEFAULT_QP,
+		.hfi_id = HFI_PROP_QP_PACKED,
+		.flags = CAP_FLAG_OUTPUT_PORT | CAP_FLAG_INPUT_PORT |
+			CAP_FLAG_DYNAMIC_ALLOWED,
+		.set = iris_set_frame_qp,
+	},
+	{
+		.cap_id = P_FRAME_QP_HEVC,
+		.min = MIN_QP_8BIT_AR50LT,
+		.max = MAX_QP,
+		.step_or_mask = 1,
+		.value = DEFAULT_QP,
+		.hfi_id = HFI_PROP_QP_PACKED,
+		.flags = CAP_FLAG_OUTPUT_PORT | CAP_FLAG_INPUT_PORT |
+			CAP_FLAG_DYNAMIC_ALLOWED,
+		.set = iris_set_frame_qp,
+	},
+	{
+		.cap_id = B_FRAME_QP_H264,
+		.min = MIN_QP_8BIT_AR50LT,
+		.max = MAX_QP,
+		.step_or_mask = 1,
+		.value = DEFAULT_QP,
+		.hfi_id = HFI_PROP_QP_PACKED,
+		.flags = CAP_FLAG_OUTPUT_PORT | CAP_FLAG_INPUT_PORT |
+			CAP_FLAG_DYNAMIC_ALLOWED,
+		.set = iris_set_frame_qp,
+	},
+	{
+		.cap_id = B_FRAME_QP_HEVC,
+		.min = MIN_QP_8BIT_AR50LT,
+		.max = MAX_QP,
+		.step_or_mask = 1,
+		.value = DEFAULT_QP,
+		.hfi_id = HFI_PROP_QP_PACKED,
+		.flags = CAP_FLAG_OUTPUT_PORT | CAP_FLAG_INPUT_PORT |
+			CAP_FLAG_DYNAMIC_ALLOWED,
+		.set = iris_set_frame_qp,
+	},
+	{
+		.cap_id = INPUT_BUF_HOST_MAX_COUNT,
+		.min = DEFAULT_MAX_HOST_BUF_COUNT,
+		.max = DEFAULT_MAX_HOST_BURST_BUF_COUNT,
+		.step_or_mask = 1,
+		.value = DEFAULT_MAX_HOST_BUF_COUNT,
+		.hfi_id = HFI_PROP_BUFFER_HOST_MAX_COUNT,
+		.flags = CAP_FLAG_INPUT_PORT,
+		.set = iris_set_u32,
+	},
+	{
+		.cap_id = OUTPUT_BUF_HOST_MAX_COUNT,
+		.min = DEFAULT_MAX_HOST_BUF_COUNT,
+		.max = DEFAULT_MAX_HOST_BURST_BUF_COUNT,
+		.step_or_mask = 1,
+		.value = DEFAULT_MAX_HOST_BUF_COUNT,
+		.hfi_id = HFI_PROP_BUFFER_HOST_MAX_COUNT,
+		.flags = CAP_FLAG_OUTPUT_PORT,
+		.set = iris_set_u32,
+	},
+	{
+		.cap_id = IR_TYPE,
+		.min = V4L2_CID_MPEG_VIDEO_INTRA_REFRESH_PERIOD_TYPE_RANDOM,
+		.max = V4L2_CID_MPEG_VIDEO_INTRA_REFRESH_PERIOD_TYPE_RANDOM,
+		.step_or_mask = BIT(V4L2_CID_MPEG_VIDEO_INTRA_REFRESH_PERIOD_TYPE_RANDOM),
+		.value = V4L2_CID_MPEG_VIDEO_INTRA_REFRESH_PERIOD_TYPE_RANDOM,
+		.flags = CAP_FLAG_OUTPUT_PORT | CAP_FLAG_MENU,
+	},
+	{
+		.cap_id = IR_PERIOD,
+		.min = 0,
+		.max = INT_MAX,
+		.step_or_mask = 1,
+		.value = 0,
+		.flags = CAP_FLAG_OUTPUT_PORT |
+			CAP_FLAG_DYNAMIC_ALLOWED,
+		.set = iris_set_ir_period,
+	},
+};
+
+static const u32 iris_hfi_gen2_ar50lt_dec_ip_int_buf_tbl[] = {
+	BUF_BIN,
+	BUF_COMV,
+	BUF_NON_COMV,
+	BUF_LINE,
+};
+
+const struct iris_firmware_data iris_hfi_gen2_ar50lt_data = {
+	.init_hfi_ops = iris_hfi_gen2_sys_ops_init,
+
+	.core_arch = VIDEO_ARCH_LX,
+
+	.inst_fw_caps_dec = inst_fw_cap_gen2_ar50lt_dec,
+	.inst_fw_caps_dec_size = ARRAY_SIZE(inst_fw_cap_gen2_ar50lt_dec),
+	.inst_fw_caps_enc = inst_fw_cap_gen2_ar50lt_enc,
+	.inst_fw_caps_enc_size = ARRAY_SIZE(inst_fw_cap_gen2_ar50lt_enc),
+	.dec_input_config_params_default =
+		sm8550_vdec_input_config_params_default,
+	.dec_input_config_params_default_size =
+		ARRAY_SIZE(sm8550_vdec_input_config_params_default),
+	.dec_input_config_params_hevc =
+		sm8550_vdec_input_config_param_hevc,
+	.dec_input_config_params_hevc_size =
+		ARRAY_SIZE(sm8550_vdec_input_config_param_hevc),
+	.dec_input_config_params_vp9 =
+		sm8550_vdec_input_config_param_vp9,
+	.dec_input_config_params_vp9_size =
+		ARRAY_SIZE(sm8550_vdec_input_config_param_vp9),
+	.dec_output_config_params =
+		sm8550_vdec_output_config_params,
+	.dec_output_config_params_size =
+		ARRAY_SIZE(sm8550_vdec_output_config_params),
+	.enc_input_config_params =
+		sm8550_venc_input_config_params,
+	.enc_input_config_params_size =
+		ARRAY_SIZE(sm8550_venc_input_config_params),
+	.enc_output_config_params =
+		sm8550_venc_output_config_params,
+	.enc_output_config_params_size =
+		ARRAY_SIZE(sm8550_venc_output_config_params),
+	.dec_input_prop = sm8550_vdec_subscribe_input_properties,
+	.dec_input_prop_size = ARRAY_SIZE(sm8550_vdec_subscribe_input_properties),
+	.dec_output_prop_avc = sm8550_vdec_subscribe_output_properties_avc,
+	.dec_output_prop_avc_size =
+		ARRAY_SIZE(sm8550_vdec_subscribe_output_properties_avc),
+	.dec_output_prop_hevc = sm8550_vdec_subscribe_output_properties_hevc,
+	.dec_output_prop_hevc_size =
+		ARRAY_SIZE(sm8550_vdec_subscribe_output_properties_hevc),
+	.dec_output_prop_vp9 = sm8550_vdec_subscribe_output_properties_vp9,
+	.dec_output_prop_vp9_size =
+		ARRAY_SIZE(sm8550_vdec_subscribe_output_properties_vp9),
+	.dec_ip_int_buf_tbl = iris_hfi_gen2_ar50lt_dec_ip_int_buf_tbl,
+	.dec_ip_int_buf_tbl_size = ARRAY_SIZE(iris_hfi_gen2_ar50lt_dec_ip_int_buf_tbl),
+	.dec_op_int_buf_tbl = sm8550_dec_op_int_buf_tbl,
+	.dec_op_int_buf_tbl_size = ARRAY_SIZE(sm8550_dec_op_int_buf_tbl),
+	.enc_ip_int_buf_tbl = sm8550_enc_ip_int_buf_tbl,
+	.enc_ip_int_buf_tbl_size = ARRAY_SIZE(sm8550_enc_ip_int_buf_tbl),
+	.enc_op_int_buf_tbl = sm8550_enc_op_int_buf_tbl,
+	.enc_op_int_buf_tbl_size = ARRAY_SIZE(sm8550_enc_op_int_buf_tbl),
+};
diff --git a/drivers/media/platform/qcom/iris/iris_platform_common.h b/drivers/media/platform/qcom/iris/iris_platform_common.h
index f9763ea51c53..e0c18780c045 100644
--- a/drivers/media/platform/qcom/iris/iris_platform_common.h
+++ b/drivers/media/platform/qcom/iris/iris_platform_common.h
@@ -47,6 +47,7 @@ enum pipe_type {
 extern const struct iris_firmware_data iris_hfi_gen1_data;
 extern const struct iris_firmware_data iris_hfi_gen1_ar50lt_data;
 extern const struct iris_firmware_data iris_hfi_gen2_data;
+extern const struct iris_firmware_data iris_hfi_gen2_ar50lt_data;
 
 extern const struct iris_platform_data qcm2290_data;
 extern const struct iris_platform_data qcs8300_data;
diff --git a/drivers/media/platform/qcom/iris/iris_platform_vpu_ar50lt.c b/drivers/media/platform/qcom/iris/iris_platform_vpu_ar50lt.c
index 76bebe012bd8..d2ee3039e35a 100644
--- a/drivers/media/platform/qcom/iris/iris_platform_vpu_ar50lt.c
+++ b/drivers/media/platform/qcom/iris/iris_platform_vpu_ar50lt.c
@@ -13,12 +13,18 @@
 
 #define WRAPPER_INTR_STATUS_A2HWD_BMSK		0x10
 
-const struct iris_firmware_desc iris_vpu_ar50lt_p1_gen1_s6_desc = {
+const struct iris_firmware_desc iris_vpu_ar50lt_p1_gen1_desc = {
 	.firmware_data = &iris_hfi_gen1_ar50lt_data,
 	.get_vpu_buffer_size = iris_vpu_ar50lt_gen1_buf_size,
 	.fwname = "qcom/venus-6.0/venus.mbn",
 };
 
+const struct iris_firmware_desc iris_vpu_ar50lt_p1_gen2_s6_desc = {
+	.firmware_data = &iris_hfi_gen2_ar50lt_data,
+	.get_vpu_buffer_size = iris_vpu_ar50lt_gen2_buf_size,
+	.fwname = "qcom/vpu/ar50lt_p1_gen2_s6.mbn",
+};
+
 static const u32 iris_fmts_ar50lt_dec[] = {
 	[IRIS_FMT_H264] = V4L2_PIX_FMT_H264,
 	[IRIS_FMT_HEVC] = V4L2_PIX_FMT_HEVC,
@@ -79,7 +85,8 @@ static struct platform_inst_caps platform_inst_cap_ar50lt = {
 };
 
 const struct iris_platform_data qcm2290_data = {
-	.firmware_desc_gen1 = &iris_vpu_ar50lt_p1_gen1_s6_desc,
+	.firmware_desc_gen1 = &iris_vpu_ar50lt_p1_gen1_desc,
+	.firmware_desc_gen2 = &iris_vpu_ar50lt_p1_gen2_s6_desc,
 	.vpu_ops = &iris_vpu_ar50lt_ops,
 	.icc_tbl = iris_icc_info_ar50lt,
 	.icc_tbl_size = ARRAY_SIZE(iris_icc_info_ar50lt),

-- 
2.47.3


^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [PATCH v2 15/16] media: venus: skip QCM2290 if Iris driver is enabled
  2026-05-13 12:45 [PATCH v2 00/16] media: iris: Add AR50LT core support and enable Agatti platform Dmitry Baryshkov
                   ` (13 preceding siblings ...)
  2026-05-13 12:45 ` [PATCH v2 14/16] media: iris: add Gen2 firmware support on the Agatti platform Dmitry Baryshkov
@ 2026-05-13 12:45 ` Dmitry Baryshkov
  2026-05-13 12:45 ` [PATCH v2 16/16] media: iris: constify inst_fw_cap_sm8250_dec Dmitry Baryshkov
  2026-05-13 14:34 ` [PATCH v2 00/16] media: iris: Add AR50LT core support and enable Agatti platform Konrad Dybcio
  16 siblings, 0 replies; 19+ messages in thread
From: Dmitry Baryshkov @ 2026-05-13 12:45 UTC (permalink / raw)
  To: Vikash Garodia, Abhinav Kumar, Bryan O'Donoghue,
	Mauro Carvalho Chehab, Bjorn Andersson, Konrad Dybcio,
	Rob Herring, Krzysztof Kozlowski, Conor Dooley, Vishnu Reddy
  Cc: linux-media, linux-arm-msm, linux-kernel, devicetree,
	Dikshita Agarwal

As the Iris driver now supports the QCM2290 hardware too, there is a
race between Venus and Iris drivers on binding to the corresponding
device. Follow the approach used by other platforms and skip QCM2290 in
the Venus driver if Iris is enabled.

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Reviewed-by: Dikshita Agarwal <dikshita.agarwal@oss.qualcomm.com>
---
 drivers/media/platform/qcom/venus/core.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/drivers/media/platform/qcom/venus/core.c b/drivers/media/platform/qcom/venus/core.c
index a87e8afb23df..8838fa958571 100644
--- a/drivers/media/platform/qcom/venus/core.c
+++ b/drivers/media/platform/qcom/venus/core.c
@@ -1074,7 +1074,6 @@ static const struct venus_resources sc7280_res = {
 	.dec_nodename = "video-decoder",
 	.enc_nodename = "video-encoder",
 };
-#endif
 
 static const struct bw_tbl qcm2290_bw_table_dec[] = {
 	{ 352800, 597000, 0, 746000, 0 }, /* 1080p@30 + 720p@30 */
@@ -1125,12 +1124,15 @@ static const struct venus_resources qcm2290_res = {
 	.enc_nodename = "video-encoder",
 	.min_fw = &min_fw,
 };
+#endif
 
 static const struct of_device_id venus_dt_match[] = {
 	{ .compatible = "qcom,msm8916-venus", .data = &msm8916_res, },
 	{ .compatible = "qcom,msm8996-venus", .data = &msm8996_res, },
 	{ .compatible = "qcom,msm8998-venus", .data = &msm8998_res, },
+#if (!IS_ENABLED(CONFIG_VIDEO_QCOM_IRIS))
 	{ .compatible = "qcom,qcm2290-venus", .data = &qcm2290_res, },
+#endif
 	{ .compatible = "qcom,sc7180-venus", .data = &sc7180_res, },
 	{ .compatible = "qcom,sdm660-venus", .data = &sdm660_res, },
 	{ .compatible = "qcom,sdm845-venus", .data = &sdm845_res, },

-- 
2.47.3


^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [PATCH v2 16/16] media: iris: constify inst_fw_cap_sm8250_dec
  2026-05-13 12:45 [PATCH v2 00/16] media: iris: Add AR50LT core support and enable Agatti platform Dmitry Baryshkov
                   ` (14 preceding siblings ...)
  2026-05-13 12:45 ` [PATCH v2 15/16] media: venus: skip QCM2290 if Iris driver is enabled Dmitry Baryshkov
@ 2026-05-13 12:45 ` Dmitry Baryshkov
  2026-05-13 14:34 ` [PATCH v2 00/16] media: iris: Add AR50LT core support and enable Agatti platform Konrad Dybcio
  16 siblings, 0 replies; 19+ messages in thread
From: Dmitry Baryshkov @ 2026-05-13 12:45 UTC (permalink / raw)
  To: Vikash Garodia, Abhinav Kumar, Bryan O'Donoghue,
	Mauro Carvalho Chehab, Bjorn Andersson, Konrad Dybcio,
	Rob Herring, Krzysztof Kozlowski, Conor Dooley, Vishnu Reddy
  Cc: linux-media, linux-arm-msm, linux-kernel, devicetree,
	Dikshita Agarwal

Mark inst_fw_cap_sm8250_dec as a const array, the data is read-only.

Suggested-by: Vishnu Reddy <busanna.reddy@oss.qualcomm.com>
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
---
 drivers/media/platform/qcom/iris/iris_hfi_gen1.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/media/platform/qcom/iris/iris_hfi_gen1.c b/drivers/media/platform/qcom/iris/iris_hfi_gen1.c
index 39e88d5dd6d5..6ec5ecfc7759 100644
--- a/drivers/media/platform/qcom/iris/iris_hfi_gen1.c
+++ b/drivers/media/platform/qcom/iris/iris_hfi_gen1.c
@@ -13,7 +13,7 @@
 #define BITRATE_MAX		160000000
 #define BITRATE_STEP		100
 
-static struct platform_inst_fw_cap inst_fw_cap_sm8250_dec[] = {
+static const struct platform_inst_fw_cap inst_fw_cap_sm8250_dec[] = {
 	{
 		.cap_id = PIPE,
 		/* .max, .min and .value are set via platform data */

-- 
2.47.3


^ permalink raw reply related	[flat|nested] 19+ messages in thread

* Re: [PATCH v2 00/16] media: iris: Add AR50LT core support and enable Agatti platform
  2026-05-13 12:45 [PATCH v2 00/16] media: iris: Add AR50LT core support and enable Agatti platform Dmitry Baryshkov
                   ` (15 preceding siblings ...)
  2026-05-13 12:45 ` [PATCH v2 16/16] media: iris: constify inst_fw_cap_sm8250_dec Dmitry Baryshkov
@ 2026-05-13 14:34 ` Konrad Dybcio
  2026-05-13 14:44   ` Dmitry Baryshkov
  16 siblings, 1 reply; 19+ messages in thread
From: Konrad Dybcio @ 2026-05-13 14:34 UTC (permalink / raw)
  To: Dmitry Baryshkov, Vikash Garodia, Abhinav Kumar,
	Bryan O'Donoghue, Mauro Carvalho Chehab, Bjorn Andersson,
	Konrad Dybcio, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
	Vishnu Reddy
  Cc: linux-media, linux-arm-msm, linux-kernel, devicetree,
	Dikshita Agarwal

On 5/13/26 2:45 PM, Dmitry Baryshkov wrote:
> This series adds support for the AR50Lt VPU core to the iris driver and
> enables the Agatti SoC to use Gen2 firmware and HFI.

[...]

> base-commit: e98d21c170b01ddef366f023bbfcf6b31509fa83
> change-id: 20260507-iris-ar50lt-06228469aa5b
> prerequisite-message-id: 20260209-iris-venus-fix-sm8250-v5-0-0a22365d3585@oss.qualcomm.com

There's 6289 prerequisites listed in this cover letter (probably a record)

Konrad

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [PATCH v2 00/16] media: iris: Add AR50LT core support and enable Agatti platform
  2026-05-13 14:34 ` [PATCH v2 00/16] media: iris: Add AR50LT core support and enable Agatti platform Konrad Dybcio
@ 2026-05-13 14:44   ` Dmitry Baryshkov
  0 siblings, 0 replies; 19+ messages in thread
From: Dmitry Baryshkov @ 2026-05-13 14:44 UTC (permalink / raw)
  To: Konrad Dybcio
  Cc: Vikash Garodia, Abhinav Kumar, Bryan O'Donoghue,
	Mauro Carvalho Chehab, Bjorn Andersson, Konrad Dybcio,
	Rob Herring, Krzysztof Kozlowski, Conor Dooley, Vishnu Reddy,
	linux-media, linux-arm-msm, linux-kernel, devicetree,
	Dikshita Agarwal

On Wed, May 13, 2026 at 04:34:11PM +0200, Konrad Dybcio wrote:
> On 5/13/26 2:45 PM, Dmitry Baryshkov wrote:
> > This series adds support for the AR50Lt VPU core to the iris driver and
> > enables the Agatti SoC to use Gen2 firmware and HFI.
> 
> [...]
> 
> > base-commit: e98d21c170b01ddef366f023bbfcf6b31509fa83
> > change-id: 20260507-iris-ar50lt-06228469aa5b
> > prerequisite-message-id: 20260209-iris-venus-fix-sm8250-v5-0-0a22365d3585@oss.qualcomm.com
> 
> There's 6289 prerequisites listed in this cover letter (probably a record)

ROFL. It seems I forgot to change the base-commit. It's
media-committers/next + Kodiak-Gen2 patches.

> 
> Konrad

-- 
With best wishes
Dmitry

^ permalink raw reply	[flat|nested] 19+ messages in thread

end of thread, other threads:[~2026-05-13 14:44 UTC | newest]

Thread overview: 19+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-05-13 12:45 [PATCH v2 00/16] media: iris: Add AR50LT core support and enable Agatti platform Dmitry Baryshkov
2026-05-13 12:45 ` [PATCH v2 01/16] media: iris: Skip UBWC configuration when not supported Dmitry Baryshkov
2026-05-13 12:45 ` [PATCH v2 02/16] media: iris: Filter UBWC raw formats based on hardware capabilities Dmitry Baryshkov
2026-05-13 12:45 ` [PATCH v2 03/16] media: iris: Introduce set_preset_register as a vpu_op Dmitry Baryshkov
2026-05-13 12:45 ` [PATCH v2 04/16] media: iris: Introduce interrupt_init " Dmitry Baryshkov
2026-05-13 12:45 ` [PATCH v2 05/16] media: iris: add vpu op hook to disable ARP buffer Dmitry Baryshkov
2026-05-13 12:45 ` [PATCH v2 06/16] media: iris: Add platform data field for watchdog interrupt mask Dmitry Baryshkov
2026-05-13 12:45 ` [PATCH v2 07/16] media: iris: Add platform flag for instantaneous bandwidth voting Dmitry Baryshkov
2026-05-13 12:45 ` [PATCH v2 08/16] media: iris: skip PIPE if it is not supported by the platform Dmitry Baryshkov
2026-05-13 12:45 ` [PATCH v2 09/16] media: iris: Add framework support for AR50_LITE video core Dmitry Baryshkov
2026-05-13 12:45 ` [PATCH v2 10/16] media: iris: add minimal GET_PROPERTY implementation Dmitry Baryshkov
2026-05-13 12:45 ` [PATCH v2 11/16] media: iris: update buffer requirements based on received info Dmitry Baryshkov
2026-05-13 12:45 ` [PATCH v2 12/16] media: iris: implement support for the Agatti platform Dmitry Baryshkov
2026-05-13 12:45 ` [PATCH v2 13/16] media: iris: Introduce buffer size calculations for AR50LT Dmitry Baryshkov
2026-05-13 12:45 ` [PATCH v2 14/16] media: iris: add Gen2 firmware support on the Agatti platform Dmitry Baryshkov
2026-05-13 12:45 ` [PATCH v2 15/16] media: venus: skip QCM2290 if Iris driver is enabled Dmitry Baryshkov
2026-05-13 12:45 ` [PATCH v2 16/16] media: iris: constify inst_fw_cap_sm8250_dec Dmitry Baryshkov
2026-05-13 14:34 ` [PATCH v2 00/16] media: iris: Add AR50LT core support and enable Agatti platform Konrad Dybcio
2026-05-13 14:44   ` Dmitry Baryshkov

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox