Split implementations by Q and Z