made faster and more concise