select
c.id as contract_id,
c.pension_rule_id as contract_pension_rule_id,
p.id as product_id,
p.pens_scheme_accum_stage_id as scheme_id,
ps.pension_rule_id as product_pension_rule_id,
pr_contract.edition_number as contract_rule,
pr_product.edition_number as product_rule
from ourpension.contract c
join ourpension.contract_product_history h
on h.contract_id = c.id
and current_timestamp between
h.begin_date and coalesce(h.end_date, 'infinity')
join prod_line.pens_product p
on p.id = h.pens_product_id
left join prod_line.pens_scheme ps
on ps.id = p.pens_scheme_accum_stage_id
left join ourpension.pension_rule pr_contract
on pr_contract.id = c.pension_rule_id
left join ourpension.pension_rule pr_product
on pr_product.id = ps.pension_rule_id
where c.service_type in ('NPO', 'PDS')
and c.pension_rule_id is distinct from ps.pension_rule_id
limit 50;