refs P46: implementing first part