adding some classes to handle network