Hello, I came to US on L1B visa and later changed to H1B(change of status) in 2012. It’s been 10 years since I first came to US, and I never went back to India. However, I have maintained legal status by filing H1b extensions and have an approved i140. In between, I have changed 3 jobs. Now I want to do H1B stamping. Do I need to go to my home country for first-time H1B stamping or can I attend US embassy in Canada, as the processing times are less in Canada? If I get 221g, can I stay in Canada until my visa is processed. Kindly suggest.