WITH RECURSIVE t AS (
    SELECT s2.service_id,
           s2.service_name,
           1 AS dependency_depth,
           CONCAT('Payment_Gateway','->',s2.service_name) AS dependency_path
    FROM service_dependencies sp
    JOIN services s1 ON sp.callee_service_id=s1.service_id
    JOIN services s2 ON sp.caller_service_id=s2.service_id
    WHERE YEAR(first_call_date)=2025 AND s1.service_name='Payment_Gateway'

    UNION ALL
    SELECT s2.service_id AS service_id,
           s2.service_name,
           dependency_depth+1,
           CONCAT(dependency_path,'->',s2.service_name) 
    FROM t 
    JOIN service_dependencies sp ON t.service_id=sp.callee_service_id
    JOIN services s2 ON sp.caller_service_id=s2.service_id
    WHERE YEAR(first_call_date)=2025
)
SELECT *
FROM t 
ORDER BY dependency_depth ASC,service_id ASC ,dependency_path ASC