introduce viewBox and preserveAspectRatio