Also with less redundant stuff