implemented distributed agents