+added generic compositor