add distributed architechure