static fromPublic(public_key, compressed = true, version = 56) {
        const sha2 = hash.sha256(public_key.toBuffer(compressed));
        const rep = hash.ripemd160(sha2);
        const versionBuffer = new Buffer.alloc(1);
        versionBuffer.writeUInt8((0xFF & version), 0);
        const addr = Buffer.concat([versionBuffer, rep]);
        let check = hash.sha256(addr);
        check = hash.sha256(check);
        const buffer = Buffer.concat([addr, check.slice(0, 4)]);
        return new Address(hash.ripemd160(buffer));
    }
@return Address - Compressed PTS format (by default)