```
if (a is String) {
	return b != null ? a + b.toString() : a;
}

if (a == null) {
	return b;
}

if (b is String) {
	return a.toString() + b;
}

if (b == null) {
	return null;
}

return a + b;
```