add preliminary chameleon support