#include <stdio.h>

int main(void) 
{
    long num1, num2;//输入数
    scanf("%ld %ld", &num1, &num2);

    //求最大公约数

    long greatest_common_divisor = 0;
    int divisor_1, dividend_1;
    if (num1 >= num2)//确定除数、被除数
     divisor_1 = num1, dividend_1 = num2;
    else
     divisor_1 = num2, dividend_1 = num1;

    while((divisor_1 % dividend_1) != 0)//欧几里得求最大公约数
    {
        int middle = divisor_1;
        divisor_1 = dividend_1;
        dividend_1 = middle % divisor_1;
    }
    greatest_common_divisor = dividend_1;

    //求最小公倍数
    long least_common_multiple = 0;
    long divisor_2, dividend_2;
    if (num1 >= num2)
     divisor_2 = num1, dividend_2 = num2;
    else
     divisor_2 = num2, dividend_2 = num1;

    int middle = divisor_2;//方便递加的中间数
    while(1)//被除数成倍数增长,直到除尽除数
    {
        if((divisor_2 % dividend_2 == 0))
            break;
        divisor_2 += middle;
    }
    least_common_multiple = divisor_2;

    printf("%ld", greatest_common_divisor + least_common_multiple);


    return 0;
}