move query out of the ctor
use Object.create