Added type aliasing to avoid indirections