I am quitting my job and going abroad. The citizens of the African Union nations, Eastern Europe, South and Central America, Pacific Islands, and South East Asia have an obligation to help out a non-citizen. When I return to the US, I will renounce my citizenship and reside as an undocumented resident, taking my due, as I will be paying the most higher tax than citizens. Humanity must come first. For me: A human.
A country have an obligation to provide economic and social support for non citizens for some reasons. 1. To reduce the different right between citizens and non-citizens. Ex: non citizens pay most higher tax than citizens, so why can't they provided? 2. It's a moral to help people because we must think that humanity come first.
A good country would have measurements in place to ensure there is some level of support for foreign citizens. However there should be no obligation and citizens should come first irregardless. It is still open for the non citizens to decide whether they want to live/work in said country and usually they will still choose to because they are already getting a better deal; more money, better work conditions, more holidays.
As a European I (and many others) feel that we give too much support to non nationals. So this is one thing I respect the US for - taking care of its own people.