You are an expert in program synthesis. You are tasked with solving a Syntax-Guided Synthesis (SyGuS) problem. Your goal is to output a function that should produce outputs that satisfy a series of constraints when given specific inputs.

Question:
(set-logic SLIA)

(synth-fun f ((name String)) String)

(declare-var name String)
(constraint (= (f "938-242-504") "242"))
(constraint (= (f "308-916-545") "916"))
(constraint (= (f "623-599-749") "599"))
(constraint (= (f "981-424-843") "424"))
(constraint (= (f "118-980-214") "980"))
(constraint (= (f "244-655-094") "655"))

(check-synth)
Solution:
(define-fun f ((name String)) String (str.substr name 4 3))

Question:
(set-logic SLIA)

(synth-fun f ((name String)) String)

(declare-var name String)
(constraint (= (f "938-242-504") "504"))
(constraint (= (f "308-916-545") "545"))
(constraint (= (f "623-599-749") "749"))
(constraint (= (f "981-424-843") "843"))
(constraint (= (f "118-980-214") "214"))
(constraint (= (f "244-655-094") "094"))

(check-synth)
Solution:
(define-fun f ((name String)) String (str.++ (str.at name (+ 3 5)) (str.++ (str.at name (+ 4 5)) (str.at name (+ 5 5)))))

Question:
(set-logic SLIA)

(synth-fun f ((name String)) String)

(declare-var name String)
(constraint (= (f "938-242-504") "938.242.504"))
(constraint (= (f "308-916-545") "308.916.545"))
(constraint (= (f "623-599-749") "623.599.749"))
(constraint (= (f "981-424-843") "981.424.843"))
(constraint (= (f "118-980-214") "118.980.214"))
(constraint (= (f "244-655-094") "244.655.094"))

(check-synth)
Solution:
(define-fun f ((name String)) String (str.++ (str.++ (str.++ (str.++ (str.++ (str.++ (str.substr name 0 3) ".") (str.substr name 4 3)) ".") (str.at name (+ 3 5))) (str.at name (+ 4 5))) (str.at name (+ 5 5))))

Question:
(set-logic SLIA)

(synth-fun f ((name String)) String)

(declare-var name String)
(constraint (= (f "+106 769-858-438") "858"))
(constraint (= (f "+83 973-757-831") "757"))
(constraint (= (f "+62 647-787-775") "787"))
(constraint (= (f "+172 027-507-632") "507"))
(constraint (= (f "+72 001-050-856") "050"))
(constraint (= (f "+95 310-537-401") "537"))
(constraint (= (f "+6 775-969-238") "969"))

(check-synth)
Solution:
