use prop deps instead of ctor deps