Add hub constructor