NodeRegistry - removeNode unnecessarily casts the nodeIndex to uint64 potentially truncating its value
`removeNode` removes a node from the Nodes array. This is done by copying the last node of the array to the `_nodeIndex` of the node that is to be removed. Finally the node array size is decreased.\\nA Node's index is also referenced in the `SignerInformation` struct. This index needs to be adjusted when removing a node from the array as the last node is copied to the index of the node that is to be removed.\\nWhen adjusting the Node's index in the `SignerInformation` struct `removeNode` casts the index to `uint64`. This is both unnecessary as the struct defines the index as `uint` and theoretically dangerous if a node at an index greater than `uint64_max` is removed. The resulting `SignerInformation` index will be truncated to `uint64` leading to an inconsistency in the contract.\\n```\\nstruct SignerInformation {\\n    uint64 lockedTime;                  /// timestamp until the deposit of an in3-node can not be withdrawn after the node was removed\\n    address owner;                      /// the owner of the node\\n\\n    Stages stage;                       /// state of the address\\n\\n    uint depositAmount;                 /// amount of deposit to be locked, used only after a node had been removed\\n\\n    uint index;                         /// current index-position of the node in the node-array\\n}\\n```\\n\\n```\\n// move the last entry to the removed one.\\nIn3Node memory m = nodes[length - 1];\\nnodes[\\_nodeIndex] = m;\\n\\nSignerInformation storage si = signerIndex[m.signer];\\nsi.index = uint64(\\_nodeIndex);\\nnodes.length--;\\n```\\n
Resolution\\nFixed as per recommendation https://git.slock.it/in3/in3-contracts/commit/6c35dd422e27eec1b1d2f70e328268014cadb515.\\nDo not cast and therefore truncate the index.
```\\nstruct SignerInformation {\\n    uint64 lockedTime;                  /// timestamp until the deposit of an in3-node can not be withdrawn after the node was removed\\n    address owner;                      /// the owner of the node\\n\\n    Stages stage;                       /// state of the address\\n\\n    uint depositAmount;                 /// amount of deposit to be locked, used only after a node had been removed\\n\\n    uint index;                         /// current index-position of the node in the node-array\\n}\\n```\\n