Prepare the dough by mixing the flour, sugar, salt and yeast together. Add egg, water and oil together to make a smooth dough.
Transfer the dough to a flour covered work surface knead again for 10 minutes. Shape the dough into a smooth ball, place it in a oiled bowl, cover it with cling film and allow it to rise in a warm place for 1 hour or until doubled in size.
Meanwhile prepare the stuffing, wash and cut the chicken in to small pieces.
Heat oil in a pan, add ginger garlic paste and onions saute till the raw smell goes. Add the spice powders and chicken, cover the pan and cook the chicken in medium heat.
When the chicken is almost done add the vegetables and salt. Cook till the vegetables are cooked and all the water is absorbed.
Take the risen dough, knock the air back and roll it out into a long rectangle. Make slashes on both sides of the rectangle, place the filling in the middle from top to bottom, starting from the top fold in the end piece of the dough strips over the filling. Tuck in the end to seal.
Place the braid on a baking sheet, cover it with a oiled cling film and leave it in a warm place to rise for about 20 to 30 minutes
Preheat the oven to 200 degree Celsius. Make the glaze by mixing the egg yolk and milk together and brush it on top of the bread. Sprinkle sesame seeds and poppy seeds on top of each strip alternatively.
Bake in the preheated oven for 10 minutes, then reduce the temperature to 190 degree Celsius and bake for further 10 to 15 minutes or until the braid is well risen and golden in colour.