Put the tofu in a clean cloth and squeeze out as much moisture as you can, then tip the tofu into a mixing bowl and mash it with a fork. Peel and finely chop the garlic. Cut 2 of the spring onions crosswise into very thin rings, reserving the other 2 for the stock.

Add the garlic and sliced spring onions to the bowl with the tofu and then add the ground beef, soy sauce, sesame oil and sesame seeds. Mix well and roll into about 20 meatballs – about the size of a walnut. At this point, you could refrigerate the meatballs until ready to cook.

Put the stock in a large pan. Cut the remaining spring onions into 2 inch lengths. Peel the ginger and cut it into thin slices. Add the ginger and spring onions to the stock and bring it to a boil. Lower the heat and simmer gently for 8-10 minutes. Salt the stock to your taste. Return to a boil to add meatballs.

Put the flour onto a plate and beat the egg lightly in a bowl. Roll each meatball first in the flour and then the egg and then drop into the boiling soup. If the soup falls out of the boil stage as you are adding meatballs, this is ok. Once all meatballs have been added, return soup to a boil and then serve.