initial checkin
refactor to object query interface
EOD checkin