Revert "add swift"

This reverts commit 6e9d85e5dc0f02f9aaf554fdcc20e17f8c75844b.
Revert "Revert "add communication""

This reverts commit b364c051d55f2767b7eb6a12194a271d60183bf9.
add swift

add swift