reduce code length