global definitions added