#define MPI_ANY_SOURCE $COMM_ANY_SOURCE #define MPI_ANY_TAG $COMM_ANY_TAG typedef $comm *MPI_Comm; $input int NPROCS; $proc __procs[NPROCS]; _Bool __start = 0; $comm __MPI_Comm_World; MPI_Comm MPI_COMM_WORLD = &__MPI_Comm_World; typedef int MPI_Datatype; #define MPI_INT 1 #define MPI_DOUBLE 2 #define MPI_FLOAT 3 #define MPI_CHAR 4 struct __MPI_Status { int source; int tag; int size; }; typedef struct __MPI_Status MPI_Status; void MPI_Process (int rank); void init() { for (int i=0; i