mod network {
    pub mod info {
        pub struct Address(pub u8, pub u8, pub u8, pub u8);
        pub struct Port {
            pub protocol: String,
            pub port: u16,
        }
    }
    pub mod comm {
        pub fn send_file() {
            let a = super::info::Address(192, 168, 0, 1);
            let p = crate::network::info::Port {
                protocol: String::from("TCP"),
                port: 8080,
            };
            println!("Sending file to {}.{}.{}.{} on port {} via {}",
                a.0, a.1, a.2, a.3, p.port, p.protocol);
        }
    }
}

fn main() {
    network::comm::send_file();
}
