// No.2558 中国剰余定理
package main

import (
	"fmt"
	"math"
)

func main() {
	var A, B, a, b int
	fmt.Scan(&A, &B, &a, &b)

	for x := 0; x <= math.MaxInt32; x++ {
		if x%A == a && x%B == b {
			fmt.Println(x)
			break
		}
	}
}