Added a primitive checking for network mechanism, rearranged some classes