úÎ.7+#     number of slaves  get slave id print a message on master Poll with a condition  Try take NVar Try put NVar Take NVar Put NVar  New empty NVar Reads a packet ID from h Writes a packet ID to h Reads a ByteString from h !Reads a " from h # Writes a $ to h %Writes a binary to h  !#%  !#% &'()*+,-.6The master process. Only returns when all slaves have  closed connection. /the NC Context 6Initialises a slave process returning the NC context. #Returns the slave ID of the caller Number of slaves Prints a message on master  01234567&Convinience function. It calls either  or  5 depending on whether we have -m on the command line C or not. If -m is specified the following argument should be the ! number of slaves to wait for. 4Returns in the slave processes with the NC context. * Does not return in the master process.  Creates a new empty NVar on the master. Doesn't block the caller. Puts a value into NVar specified by the name.  If the NVar doesn''t exist this blocks the caller until it's , created potentially by an other slave. If the NVar2 already has a value this blocks the caller until  an other slave calls  . If the NVar5 is empty this returns immediately after the network  transactions. Takes the latest value of NVar from the master.  If the NVar doesn''t exist this blocks the caller until it's + created potentially by an other slave. If the NVar' is empty this blocks the caller until  an other slave calls  . If the NVar8 has a value this returns immediately after the network  transactions. Tries to put a value into NVar specified by the name.  If the NVar doesn't exist returns 8 9. If the NVar already has a value returns 8 9 and  leaves the value untouched. If the NVar. is empty this sets it to the specified value  and returns 8 :. Takes the latest value of NVar from the master.  If the NVar doesn''t exist this blocks the caller until it's + created potentially by an other slave. If the NVar' is empty this blocks the caller until  an other slave calls  . If the NVar8 has a value this returns immediately after the network  transactions.  Like with ;s this takes an NVar put's the taken value back,  and returns it. ,Polls while the given condition is true for NVar called name.  As this call doesn'(t return while the condition is true, it's much E more efficient than busy waiting in the slave generating network  traffic.    <      !"#$%&'()*+,-./0123456789::;<=>?@ABCADEADFGHIJnet-concurrent-0.1.0!Control.Concurrent.Network.Master Control.Concurrent.Network.Slave"Control.Concurrent.Network.ProcessControl.Concurrent.Network.NVar#Control.Concurrent.Network.Protocol initMaster NCContextNCChdl initSlaveslaveID numSlavesprintMsg initProcessnewNVarputNVartakeNVar tryPutNVar tryTakeNVarreadNVar pollWithOpEqualityNEQOPEQOPProtoIdNSLSIDPMSPWOTTNTPNTNVPNVNNVMsgLen readProtoId writeProtoIdreadByteString readBinaryghc-binary-0.5.0.2 Data.BinaryBinarywriteByteStringbytestring-0.9.1.8Data.ByteString.Lazy.Internal ByteString writeBinaryMasterMregistryslaveid numslavesMMVarMMVdatempt handlePacketOptions optMaster optChildNum optDbgLeveloptMIPoptMPortoptionsghc-prim GHC.TypesIOGHC.BoolFalseTruebaseGHC.MVarMVar