diff --git a/app/src/main/java/de/westnordost/streetcomplete/quests/bike_parking_type/BikeParkingType.kt b/app/src/main/java/de/westnordost/streetcomplete/quests/bike_parking_type/BikeParkingType.kt
index 4136c752a7..36e5312005 100644
--- a/app/src/main/java/de/westnordost/streetcomplete/quests/bike_parking_type/BikeParkingType.kt
+++ b/app/src/main/java/de/westnordost/streetcomplete/quests/bike_parking_type/BikeParkingType.kt
@@ -3,6 +3,7 @@ package de.westnordost.streetcomplete.quests.bike_parking_type
enum class BikeParkingType(val osmValue: String) {
STANDS("stands"),
WALL_LOOPS("wall_loops"),
+ SAFE_LOOPS("safe_loops"),
SHED("shed"),
LOCKERS("lockers"),
BUILDING("building"),
diff --git a/app/src/main/java/de/westnordost/streetcomplete/quests/bike_parking_type/BikeParkingTypeItem.kt b/app/src/main/java/de/westnordost/streetcomplete/quests/bike_parking_type/BikeParkingTypeItem.kt
index 39b26e0b1b..9cc427c6a3 100644
--- a/app/src/main/java/de/westnordost/streetcomplete/quests/bike_parking_type/BikeParkingTypeItem.kt
+++ b/app/src/main/java/de/westnordost/streetcomplete/quests/bike_parking_type/BikeParkingTypeItem.kt
@@ -9,6 +9,7 @@ fun BikeParkingType.asItem() = Item(this, iconResId, titleResId)
private val BikeParkingType.titleResId: Int get() = when (this) {
STANDS -> R.string.quest_bicycle_parking_type_stand
WALL_LOOPS -> R.string.quest_bicycle_parking_type_wheelbender
+ SAFE_LOOPS -> R.string.quest_bicycle_parking_type_safeloops
SHED -> R.string.quest_bicycle_parking_type_shed
LOCKERS -> R.string.quest_bicycle_parking_type_locker
BUILDING -> R.string.quest_bicycle_parking_type_building
@@ -20,6 +21,7 @@ private val BikeParkingType.titleResId: Int get() = when (this) {
private val BikeParkingType.iconResId: Int get() = when (this) {
STANDS -> R.drawable.bicycle_parking_type_stand
WALL_LOOPS -> R.drawable.bicycle_parking_type_wheelbenders
+ SAFE_LOOPS -> R.drawable.bicycle_parking_type_safeloops
SHED -> R.drawable.bicycle_parking_type_shed
LOCKERS -> R.drawable.bicycle_parking_type_lockers
BUILDING -> R.drawable.bicycle_parking_type_building
diff --git a/app/src/main/res/authors.txt b/app/src/main/res/authors.txt
index 588aad62ee..6ec5554a8f 100644
--- a/app/src/main/res/authors.txt
+++ b/app/src/main/res/authors.txt
@@ -36,6 +36,7 @@ barrier_bicycle_installation_r… CC0 LEGOFAHRRAD https://commons.
bicycle_parking_type_buildi... CC-BY-SA 3.0 Visitor7 https://commons.wikimedia.org/wiki/File:Bike_Storage_(YAUS).jpg
bicycle_parking_type_locker... CC-BY-SA 3.0 Rept0n1x https://commons.wikimedia.org/wiki/File:Bicycle_lockers_at_Gathurst_railway_station.JPG
+bicycle_parking_type_safel... CC0 1.0 RogerWiki https://commons.wikimedia.org/wiki/File:Fahrradst%C3%A4nder_mit_Anlehnb%C3%BCgel_2.jpg
bicycle_parking_type_shed.jpg CC-BY-SA 3.0 Tabl-trai https://commons.wikimedia.org/wiki/File:Parking_v%C3%A9los_s%C3%A9curis%C3%A9_gare_des_Martres_2015-08-20.JPG
bicycle_parking_type_stand.jpg CC0 Mateusz Konieczny https://commons.wikimedia.org/wiki/File:Bicycle_parking_stand_2.jpg
bicycle_parking_type_wheelb... CC-BY-SA 4.0 Joxemai https://commons.wikimedia.org/wiki/File:Bizikletak_lotzekoa.JPG
diff --git a/app/src/main/res/drawable-hdpi/bicycle_parking_type_safeloops.jpg b/app/src/main/res/drawable-hdpi/bicycle_parking_type_safeloops.jpg
new file mode 100644
index 0000000000..be0b18749d
Binary files /dev/null and b/app/src/main/res/drawable-hdpi/bicycle_parking_type_safeloops.jpg differ
diff --git a/app/src/main/res/drawable-mdpi/bicycle_parking_type_safeloops.jpg b/app/src/main/res/drawable-mdpi/bicycle_parking_type_safeloops.jpg
new file mode 100644
index 0000000000..738e89b4a4
Binary files /dev/null and b/app/src/main/res/drawable-mdpi/bicycle_parking_type_safeloops.jpg differ
diff --git a/app/src/main/res/drawable-xhdpi/bicycle_parking_type_safeloops.jpg b/app/src/main/res/drawable-xhdpi/bicycle_parking_type_safeloops.jpg
new file mode 100644
index 0000000000..eccd8ec095
Binary files /dev/null and b/app/src/main/res/drawable-xhdpi/bicycle_parking_type_safeloops.jpg differ
diff --git a/app/src/main/res/drawable-xxhdpi/bicycle_parking_type_safeloops.jpg b/app/src/main/res/drawable-xxhdpi/bicycle_parking_type_safeloops.jpg
new file mode 100644
index 0000000000..ce395b51cb
Binary files /dev/null and b/app/src/main/res/drawable-xxhdpi/bicycle_parking_type_safeloops.jpg differ
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index fe27cde668..9567920001 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -764,6 +764,7 @@ Before uploading your changes, the app checks with a <a href=\"https://www.we
What type of bicycle parking is this?
Stand (supports bicycle frame)
Wheelbender (supports wheel only)
+ Safe Loops (supports wheel and frame)
Shed
Locker
Building