add synthetic way