added compilation support