# This works for compile but not in the IDE; use @Accessors(prefix = "m") instead.
lombok.accessors.prefix += m

# Required for Android Studio
lombok.anyConstructor.suppressConstructorProperties = true
