one might consider using visitor pattern adapter pattern or interface segregation instead gasore afite ubutwari bwinshi asaba gakwego inguzanyo rwari rwahawe izina rya nyina shaima