restricted and elaborated codes