callback support + getProps prototype