/// <summary>
        ///     Initializes a new instance of the <see cref="StrongFingerprint" /> struct from its binary
        ///     representation.
        /// </summary>
        public static StrongFingerprint Deserialize(BuildXLReader reader)
        {
            Contract.Requires(reader != null);

            var weakFingerprint = Fingerprint.Deserialize(reader);
            var selector        = Selector.Deserialize(reader);

            return(new StrongFingerprint(weakFingerprint, selector));
        }