tree 624016d638ee8c221487bf1165d3bfb596edc34c
parent cf5e4f71019dd1fcf813b21289f7e85418b766cd
parent c2eaeed92dca2a1b6215f368f09cfb8a3f235f7d
author Michael Bestas <mkbestas@lineageos.org> 1691543417 +0300
committer Michael Bestas <mkbestas@lineageos.org> 1691543417 +0300
mergetag object c2eaeed92dca2a1b6215f368f09cfb8a3f235f7d
 type commit
 tag android-13.0.0_r67
 tagger The Android Open Source Project <initial-contribution@android.com> 1691439192 -0700
 
 Android 13.0.0 Release 67 (TQ3A.230805.001)
 -----BEGIN PGP SIGNATURE-----
 
 iF0EABECAB0WIQRDQNE1cO+UXoOBCWTorT+BmrEOeAUCZNFQWAAKCRDorT+BmrEO
 eG7QAJ4vszwmqOJR6ig768rW2S6v2FNTugCgi68bCOURuWuUhr6qcqEtGCGxM5E=
 =2CQY
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQJLBAABCgA1FiEEHrBYPudH862glXQBzJUERRm+ZmkFAmTS53oXHG1rYmVzdGFz
 QGxpbmVhZ2Vvcy5vcmcACgkQzJUERRm+ZmkDBg//VoCH3iJwMgek8+8bxD63b59z
 vaZys+IZ6mR6E+bvzd4jiFgoMMgH1imXcxNHbvqeyxYVZWKZwEdclplrYzhz3/e5
 oYk2yuWpJHiLdcgp4roU7soLYfSUoxqhBbAvsZR/hl4Y5X1t5evLSTcJy4vfVoqz
 gSESS+EwdrhycYQ58pg19UGTMzjrD9mHWtLIRdp5x8mwhLFs55rMY9Jgpb8QW08F
 jG/30Wiv/Aj4rgZVGqV65+s00T80tjrZwfkCttuuTSYkHfl9srEMhkzrLJiumTCU
 op1A/emr2ZVonebtKQ79bnIQj5b8uAjuBzWYcxRC97LsO0ihd7mYtuesHCTprqbY
 0oM5ZOqdhBNc5Ivk0QYfrF1CDr4F8hHZWkUOixwI21LoTGL3lOemelH8KG9QkeS6
 Az00SsTOWe06WLy5ALFyulWB6L8PDfCoNFpc3YWi0mcm+/KXnNSsEfenYtiRaMk7
 /ksQmpJvPr+0X8wZyKM3G6o5maH6YvZgBhGc1BAp4UUEUS2q4hhK5eISzcc2VdK2
 BAINichd4rhVeR2zaPKlXJ4XH0QIa9U31RS3TbQlIISlmj08n1Sw8DJ4uAZtCiZJ
 NCid6vEkj3MG9OwlbLZ3yKMNUc6q5jlfHBsdZjupAhlEL4FnaIsotRRFtB4V1Kfg
 IN8GYfnvT1MJSQ8DPIQ=
 =dUfT
 -----END PGP SIGNATURE-----

Merge tag 'android-13.0.0_r67' into staging/lineage-20.0_merge-android-13.0.0_r67

Android 13.0.0 Release 67 (TQ3A.230805.001)

# -----BEGIN PGP SIGNATURE-----
#
# iF0EABECAB0WIQRDQNE1cO+UXoOBCWTorT+BmrEOeAUCZNFQWAAKCRDorT+BmrEO
# eG7QAJ4vszwmqOJR6ig768rW2S6v2FNTugCgi68bCOURuWuUhr6qcqEtGCGxM5E=
# =2CQY
# -----END PGP SIGNATURE-----
# gpg: Signature made Mon Aug  7 23:13:12 2023 EEST
# gpg:                using DSA key 4340D13570EF945E83810964E8AD3F819AB10E78
# gpg: Good signature from "The Android Open Source Project <initial-contribution@android.com>" [marginal]
# gpg: initial-contribution@android.com: Verified 1804 signatures in the past
#      21 months.  Encrypted 4 messages in the past 19 months.
# gpg: WARNING: This key is not certified with sufficiently trusted signatures!
# gpg:          It is not certain that the signature belongs to the owner.
# Primary key fingerprint: 4340 D135 70EF 945E 8381  0964 E8AD 3F81 9AB1 0E78

# By Android Build Coastguard Worker (5) and Lokesh Kumar Goel (1)
# Via Android Build Coastguard Worker
* tag 'android-13.0.0_r67':
  Update Security String to 2023-08-05
  Version bump to TQ3A.230705.001.B4 [core/build_id.mk]
  Version bump to TQ3A.230705.001.B3 [core/build_id.mk]
  Version bump to TQ3A.230705.001.B2 [core/build_id.mk]
  Version bump to TQ3A.230705.001.B1 [core/build_id.mk]
  Version bump to TQ3A.230705.001.A1 [core/build_id.mk]

Change-Id: I519102f4d98d35abe3c09bb19976b43c64bfa973
