some refactoring, but still WIP

also added check when joined as additional DC