prozorro_sale.jobber.packages.announcement.scenarios

            # todo: refactor this; we shouldn't get status based on producedEntities
            stage_num = self.scenario_specs["props"]["stage_num"]
            try:
                entity = self.model.produced_procedures[stage_num]
            except IndexError:
                pass
            else:
                is_last_procedure = self.model.produced_procedures and self.model.produced_procedures[-1] == entity
                if is_last_procedure and self.model.status != "dissolved":
                    stage_status = "complete"
                elif is_last_procedure and self.model._meta.get("last_entity_cancelled"):
        # TODO: this method is only used for validating scenario
        # this scenario copies data from prev procedure
        # initial mapping is used for validation because of validation is called before procedures creation
        mapped_data = await self.remap_asset_data()
        extras = self.get_mapping_extras()
        init_data = self.build_procedure_data(extras, mapping=super().base_mapping)
        data = self.build_procedure_data(extras)
        procedure_data = {
            **mapped_data,
            **init_data['procedure'],
            **data['procedure']