#include <stdio.h>
#include <stdint.h>
void add_with_carry(uint8_t a, uint8_t b, uint8_t* result, uint8_t* carry) {
// Your logic here
*result=0,*carry=0;
for (int i=0;i<8;i++){
uint8_t first=(a>>i)&1,second=(b>>i)&1;
(*result) |= ((first ^ second ^ (*carry))<<i);
(*carry) = (*carry)?((*carry) & (first | second)):(first&second);
}
}
int main() {
uint8_t a, b, result, carry;
scanf("%hhu %hhu", &a, &b);
add_with_carry(a, b, &result, &carry);
printf("%u ", result);
printf("%u", carry);
return 0;
}