private bool EmitTokenType(WSSecurityTokenSerializer.StrEntry str)
            {
                bool flag = false;

                if (((!(str is WSSecurityJan2004.SamlJan2004KeyIdentifierStrEntry) && !(str is WSSecurityXXX2005.EncryptedKeyHashStrEntry)) && !(str is WSSecurityXXX2005.SamlDirectStrEntry)) && (!base.TokenSerializer.EmitBspRequiredAttributes || (!(str is WSSecurityJan2004.KerberosHashStrEntry) && !(str is WSSecurityJan2004.LocalReferenceStrEntry))))
                {
                    return(flag);
                }
                return(true);
            }
 private string GetTokenTypeUri(WSSecurityTokenSerializer.StrEntry str, SecurityKeyIdentifierClause keyIdentifierClause)
 {
     if (!this.EmitTokenType(str))
     {
         return(null);
     }
     if (str is WSSecurityJan2004.LocalReferenceStrEntry)
     {
         string str3;
         string localTokenTypeUri = (str as WSSecurityJan2004.LocalReferenceStrEntry).GetLocalTokenTypeUri(keyIdentifierClause);
         if (((str3 = localTokenTypeUri) != null) && (((str3 == "http://docs.oasis-open.org/wss/oasis-wss-saml-token-profile-1.1#SAMLV2.0") || (str3 == "http://docs.oasis-open.org/wss/oasis-wss-saml-token-profile-1.1#SAMLV1.1")) || ((str3 == "http://docs.oasis-open.org/wss/oasis-wss-soap-message-security-1.1#EncryptedKey") || (str3 == "http://docs.oasis-open.org/wss/oasis-wss-kerberos-token-profile-1.1#GSS_Kerberosv5_AP_REQ"))))
         {
             return(localTokenTypeUri);
         }
         return(null);
     }
     return(str.GetTokenTypeUri());
 }