# vendor build type
ro.vendor.build.type                          u:object_r:vendor_build_type_prop:s0

# Modem property
persist.modem.                                u:object_r:vendor_modem_prop:s0
persist.vendor.modem.                         u:object_r:vendor_modem_prop:s0
persist.vendor.mdm.                           u:object_r:vendor_modem_prop:s0

# ramoops
vendor.ramoops.                    u:object_r:vendor_ramoops_prop:s0

persist.vendor.radio.no_wait_for_card         u:object_r:vendor_radio_prop:s0
persist.vendor.shutdown.                      u:object_r:vendor_shutdown_prop:s0
persist.vendor.radio.multisim_switch_support  u:object_r:vendor_radio_prop:s0

# battery
vendor.battery.defender.                      u:object_r:vendor_battery_defender_prop:s0

# fingerprint
vendor.fps.init.succeed               u:object_r:vendor_fingerprint_prop:s0
vendor.fps.init_retry.count           u:object_r:vendor_fingerprint_prop:s0

# Logger app
vendor.pixellogger.                           u:object_r:vendor_logger_prop:s0
persist.vendor.pixellogger.                   u:object_r:vendor_logger_prop:s0
