CPL.CompositionApi/CPL.CompositionApi.ITShop/CartComplianceCheck.cs

Compact public source page. The previous oversized rendered HTML was archived outside the public site; this page keeps source-derived context plus a bounded excerpt for browsing/search.

original 0.75 MBcompact pageexcerpt 2 lines

Source-derived context

CPL.CompositionApi/CPL.CompositionApi.ITShop/CartComplianceCheck.cs Back to OIM Explorer CPL.CompositionApi/CPL.CompositionApi.ITShop/CartComplianceCheck.cs Decompiler Source File CPL.CompositionApi.CartComplianceCheck Decompiled Source 4 extracted method/event/call references in CartComplianceCheck. Source: F:\Claude\.tmp\oim-decompiled-full\0053_One_Identity_Manager_CPL.CompositionApi.dll\CPL.CompositionApi.ITShop\CartComplianceCheck.cs Source size: 199.057 characters Interpretation Decompiled

Bounded excerpt

First lines from the rendered source block, bounded to keep the public page fast.

1using System;2using System.Collections;3using System.Collections.Concurrent;4using System.Collections.Generic;5using System.Data;6using System.Diagnostics;7using System.Linq;8using System.Runtime.CompilerServices;9using System.Runtime.InteropServices;10using System.Threading;11using System.Threading.Tasks;12using CPL.Customizer;13using NLog;14using QBM.CompositionApi;15using QBM.CompositionApi.Cache;16using QBM.CompositionApi.PlugIns;17using QER.CompositionApi.ITShop;18using QER.CompositionApi.ITShop.Check;19using QER.Customizer;20using VI.Base;21using VI.DB;22using VI.DB.Entities;23using VI.DB.MetaData;24using VI.DB.Sync;2526namespace CPL.CompositionApi.ITShop;2728internal class CartComplianceCheck : ICartPostSubmitCheck29{30	[CompilerGenerated]31	private sealed class _003C_003Ec__DisplayClass11_032	{33		[StructLayout((LayoutKind)3)]34		private struct _003C_003CGetViolationsAsync_003Eb__1_003Ed : IAsyncStateMachine35		{36			public int _003C_003E1__state;3738			public AsyncTaskMethodBuilder<System.Collections.Generic.IEnumerable<ComplianceViolation>> _003C_003Et__builder;3940			public _003C_003Ec__DisplayClass11_0 _003C_003E4__this;4142			public string uidPwo;4344			private ConfiguredTaskAwaiter<IEntity> _003C_003Eu__1;4546			private ConfiguredTaskAwaiter<System.Collections.Generic.IEnumerable<ComplianceViolation>> _003C_003Eu__2;4748			private void MoveNext()49			{50				//IL_007e: Unknown result type (might be due to invalid IL or missing references)51				//IL_0083: Unknown result type (might be due to invalid IL or missing references)52				//IL_008b: Unknown result type (might be due to invalid IL or missing references)53				//IL_00bc: Unknown result type (might be due to invalid IL or missing references)54				//IL_00c7: Unknown result type (might be due to invalid IL or missing references)55				//IL_00cc: Unknown result type (might be due to invalid IL or missing references)56				//IL_00d0: Unknown result type (might be due to invalid IL or missing references)57				//IL_00d5: Unknown result type (might be due to invalid IL or missing references)58				//IL_0102: Unknown result type (might be due to invalid IL or missing references)59				//IL_0107: Unknown result type (might be due to invalid IL or missing references)60				//IL_010f: Unknown result type (might be due to invalid IL or missing references)61				//IL_0035: Unknown result type (might be due to invalid IL or missing references)62				//IL_0040: Unknown result type (might be due to invalid IL or missing references)63				//IL_0045: Unknown result type (might be due to invalid IL or missing references)64				//IL_0049: Unknown result type (might be due to invalid IL or missing references)65				//IL_004e: Unknown result type (might be due to invalid IL or missing references)66				//IL_00ea: Unknown result type (might be due to invalid IL or missing references)67				//IL_00ec: Unknown result type (might be due to invalid IL or missing references)68				//IL_0063: Unknown result type (might be due to invalid IL or missing references)69				//IL_0065: Unknown result type (might be due to invalid IL or missing references)70				int num = _003C_003E1__state;71				_003C_003Ec__DisplayClass11_0 _003C_003Ec__DisplayClass11_ = _003C_003E4__this;72				System.Collections.Generic.IEnumerable<ComplianceViolation> result2;73				try74				{75					ConfiguredTaskAwaiter<System.Collections.Generic.IEnumerable<ComplianceViolation>> val;76					ConfiguredTaskAwaiter<IEntity> val2;77					if (num != 0)78					{79						if (num == 1)80						{81							val = _003C_003Eu__2;82							_003C_003Eu__2 = default(ConfiguredTaskAwaiter<System.Collections.Generic.IEnumerable<ComplianceViolation>>);83							num = (_003C_003E1__state = -1);84							goto IL_011e;85						}86						val2 = _003C_003Ec__DisplayClass11_.session.Source().GetAsync(new DbObjectKey("PersonWantsOrg", uidPwo), EntityLoadType.Interactive, _003C_003Ec__DisplayClass11_.ct).ConfigureAwait(false)87							.GetAwaiter();88						if (!val2.IsCompleted)89						{90							num = (_003C_003E1__state = 0);91							_003C_003Eu__1 = val2;92							_003C_003Et__builder.AwaitUnsafeOnCompleted<ConfiguredTaskAwaiter<IEntity>, _003C_003CGetViolationsAsync_003Eb__1_003Ed>(ref val2, ref this);93							return;94						}95					}96					else97					{98						val2 = _003C_003Eu__1;99						_003C_003Eu__1 = default(ConfiguredTaskAwaiter<IEntity>);100						num = (_003C_003E1__state = -1);101					}102					IEntity result = val2.GetResult();103					val = _003C_003Ec__DisplayClass11_._003C_003E4__this.ComplianceCheckForPwoAsync(_003C_003Ec__DisplayClass11_.session, result, _003C_003Ec__DisplayClass11_.orderInfo, _003C_003Ec__DisplayClass11_.hasRiskIndex, _003C_003Ec__DisplayClass11_.ct).ConfigureAwait(false).GetAwaiter();104					if (!val.IsCompleted)105					{106						num = (_003C_003E1__state = 1);107						_003C_003Eu__2 = val;108						_003C_003Et__builder.AwaitUnsafeOnCompleted<ConfiguredTaskAwaiter<System.Collections.Generic.IEnumerable<ComplianceViolation>>, _003C_003CGetViolationsAsync_003Eb__1_003Ed>(ref val, ref this);109						return;110					}111					goto IL_011e;112					IL_011e:113					result2 = val.GetResult();114				}115				catch (System.Exception exception)116				{117					_003C_003E1__state = -2;118					_003C_003Et__builder.SetException(exception);119					return;120				}121				_003C_003E1__state = -2;122				_003C_003Et__builder.SetResult(result2);123			}124125			[DebuggerHidden]126			private void SetStateMachine(IAsyncStateMachine stateMachine)127			{128				_003C_003Et__builder.SetStateMachine(stateMachine);129			}130		}131132		public ISession session;133134		public CancellationToken ct;135136		public CartComplianceCheck _003C_003E4__this;137138		public OrderInfo orderInfo;139140		public bool hasRiskIndex;141142		[AsyncStateMachine(typeof(_003C_003CGetViolationsAsync_003Eb__1_003Ed))]143		internal async System.Threading.Tasks.Task<System.Collections.Generic.IEnumerable<ComplianceViolation>> _003CGetViolationsAsync_003Eb__1(string uidPwo)144		{145			//IL_0002: Unknown result type (might be due to invalid IL or missing references)146			//IL_0007: Unknown result type (might be due to invalid IL or missing references)147			IEntity sPwo = await session.Source().GetAsync(new DbObjectKey("PersonWantsOrg", uidPwo), EntityLoadType.Interactive, ct).ConfigureAwait(false);148			return await _003C_003E4__this.ComplianceCheckForPwoAsync(session, sPwo, orderInfo, hasRiskIndex, ct).ConfigureAwait(false);149		}150151		internal System.Threading.Tasks.Task<System.Collections.Generic.IEnumerable<ComplianceViolation>> _003CGetViolationsAsync_003Eb__2(ItemInfo info)152		{153			//IL_0014: Unknown result type (might be due to invalid IL or missing references)154			return _003C_003E4__this.GetAssignRuleViolationsAsync(session, info, hasRiskIndex, ct);155		}156	}157158	[CompilerGenerated]159	private sealed class _003C_003Ec__DisplayClass12_0160	{161		public HashSet<string> rulesWithExceptionApprover;162163		public Func<ComplianceViolation, bool> _003C_003E9__1;164165		internal bool _003CSetExceptionApproverFlagsAsync_003Eb__1(ComplianceViolation v)166		{167			return rulesWithExceptionApprover.Contains(v.UidComplianceRule);168		}169	}170171	[CompilerGenerated]172	private sealed class _003C_003Ec__DisplayClass17_0173	{174		public CartComplianceCheck _003C_003E4__this;175176		public ISession session;177178		public CancellationToken ct;179180		public bool hasRiskIndex;181182		public List<ComplianceViolation> rlist;183	}184185	[CompilerGenerated]186	private sealed class _003C_003Ec__DisplayClass17_1187	{188		[StructLayout((LayoutKind)3)]189		private struct _003C_003CCheckOrgAssignmentComplianceAsync_003Eb__4_003Ed : IAsyncStateMachine190		{191			public int _003C_003E1__state;192193			public AsyncTaskMethodBuilder _003C_003Et__builder;194195			public _003C_003Ec__DisplayClass17_1 _003C_003E4__this;196197			private bool _003CisNoEffectivePerson_003E5__2;198199			private IEntity _003Crule_003E5__3;200201			private string _003CdisplayElement_003E5__4;202203			private string _003Cdescription_003E5__5;204205			private double _003CriskIndex_003E5__6;206207			private double _003CriskIndexReduced_003E5__7;208209			private ConfiguredTaskAwaiter<bool> _003C_003Eu__1;210211			private ConfiguredTaskAwaiter<IEntity> _003C_003Eu__2;212213			private ConfiguredTaskAwaiter<string> _003C_003Eu__3;214215			private ConfiguredValueTaskAwaiter<string> _003C_003Eu__4;216217			private ConfiguredValueTaskAwaiter<double> _003C_003Eu__5;218219			private void MoveNext()220			{221				//IL_00bb: Unknown result type (might be due to invalid IL or missing references)222				//IL_00c0: Unknown result type (might be due to invalid IL or missing references)223				//IL_00c8: Unknown result type (might be due to invalid IL or missing references)224				//IL_016b: Unknown result type (might be due to invalid IL or missing references)225				//IL_0170: Unknown result type (might be due to invalid IL or missing references)226				//IL_0178: Unknown result type (might be due to invalid IL or missing references)227				//IL_021d: Unknown result type (might be due to invalid IL or missing references)228				//IL_0222: Unknown result type (might be due to invalid IL or missing references)229				//IL_022a: Unknown result type (might be due to invalid IL or missing references)230				//IL_02e5: Unknown result type (might be due to invalid IL or missing references)231				//IL_02ea: Unknown result type (might be due to invalid IL or missing references)232				//IL_02f2: Unknown result type (might be due to invalid IL or missing references)233				//IL_0380: Unknown result type (might be due to invalid IL or missing references)234				//IL_0385: Unknown result type (might be due to invalid IL or missing references)235				//IL_038d: Unknown result type (might be due to invalid IL or missing references)236				//IL_0428: Unknown result type (might be due to invalid IL or missing references)237				//IL_042d: Unknown result type (might be due to invalid IL or missing references)238				//IL_0435: Unknown result type (might be due to invalid IL or missing references)239				//IL_04c0: Unknown result type (might be due to invalid IL or missing references)240				//IL_04c5: Unknown result type (might be due to invalid IL or missing references)241				//IL_04cd: Unknown result type (might be due to invalid IL or missing references)242				//IL_0072: Unknown result type (might be due to invalid IL or missing references)243				//IL_007d: Unknown result type (might be due to invalid IL or missing references)244				//IL_0082: Unknown result type (might be due to invalid IL or missing references)245				//IL_0086: Unknown result type (might be due to invalid IL or missing references)246				//IL_008b: Unknown result type (might be due to invalid IL or missing references)247				//IL_0122: Unknown result type (might be due to invalid IL or missing references)248				//IL_012d: Unknown result type (might be due to invalid IL or missing references)249				//IL_0132: Unknown result type (might be due to invalid IL or missing references)250				//IL_0136: Unknown result type (might be due to invalid IL or missing references)251				//IL_013b: Unknown result type (might be due to invalid IL or missing references)252				//IL_0333: Unknown result type (might be due to invalid IL or missing references)253				//IL_0342: Unknown result type (might be due to invalid IL or missing references)254				//IL_0347: Unknown result type (might be due to invalid IL or missing references)255				//IL_034b: Unknown result type (might be due to invalid IL or missing references)256				//IL_0350: Unknown result type (might be due to invalid IL or missing references)257				//IL_0473: Unknown result type (might be due to invalid IL or missing references)258				//IL_0482: Unknown result type (might be due to invalid IL or missing references)259				//IL_0487: Unknown result type (might be due to invalid IL or missing references)260				//IL_048b: Unknown result type (might be due to invalid IL or missing references)261				//IL_0490: Unknown result type (might be due to invalid IL or missing references)262				//IL_00a0: Unknown result type (might be due to invalid IL or missing references)263				//IL_00a2: Unknown result type (might be due to invalid IL or missing references)264				//IL_0150: Unknown result type (might be due to invalid IL or missing references)265				//IL_0152: Unknown result type (might be due to invalid IL or missing references)266				//IL_01d4: Unknown result type (might be due to invalid IL or missing references)267				//IL_01df: Unknown result type (might be due to invalid IL or missing references)268				//IL_01e4: Unknown result type (might be due to invalid IL or missing references)269				//IL_01e8: Unknown result type (might be due to invalid IL or missing references)270				//IL_01ed: Unknown result type (might be due to invalid IL or missing references)271				//IL_0298: Unknown result type (might be due to invalid IL or missing references)272				//IL_02a7: Unknown result type (might be due to invalid IL or missing references)273				//IL_02ac: Unknown result type (might be due to invalid IL or missing references)274				//IL_02b0: Unknown result type (might be due to invalid IL or missing references)275				//IL_02b5: Unknown result type (might be due to invalid IL or missing references)276				//IL_0365: Unknown result type (might be due to invalid IL or missing references)277				//IL_0367: Unknown result type (might be due to invalid IL or missing references)278				//IL_03db: Unknown result type (might be due to invalid IL or missing references)279				//IL_03ea: Unknown result type (might be due to invalid IL or missing references)280				//IL_03ef: Unknown result type (might be due to invalid IL or missing references)281				//IL_03f3: Unknown result type (might be due to invalid IL or missing references)282				//IL_03f8: Unknown result type (might be due to invalid IL or missing references)283				//IL_04a5: Unknown result type (might be due to invalid IL or missing references)284				//IL_04a7: Unknown result type (might be due to invalid IL or missing references)285				//IL_0202: Unknown result type (might be due to invalid IL or missing references)286				//IL_0204: Unknown result type (might be due to invalid IL or missing references)287				//IL_02ca: Unknown result type (might be due to invalid IL or missing references)288				//IL_02cc: Unknown result type (might be due to invalid IL or missing references)289				//IL_040d: Unknown result type (might be due to invalid IL or missing references)290				//IL_040f: Unknown result type (might be due to invalid IL or missing references)291				int num = _003C_003E1__state;292				_003C_003Ec__DisplayClass17_1 CS_0024_003C_003E8__locals26 = _003C_003E4__this;293				try294				{295					ConfiguredTaskAwaiter<bool> val5;296					ConfiguredTaskAwaiter<IEntity> val4;297					ConfiguredTaskAwaiter<string> val3;298					ConfiguredValueTaskAwaiter<double> val2;299					ConfiguredValueTaskAwaiter<string> val;300					string ruleNumber;301					bool result;302					IEntity entity;303					double num2;304					string text;305					switch (num)306					{307					default:308						val5 = CS_0024_003C_003E8__locals26.CS_0024_003C_003E8__locals1._003C_003E4__this._isNoInheritPersonCache.GetOrAdd<string, AsyncLazy<bool>>(CS_0024_003C_003E8__locals26.uidOrg, (string key) => new AsyncLazy<bool>((CancellationToken ctx) => GetIsNoInheritPersonAsync(CS_0024_003C_003E8__locals26.uidOrg, CS_0024_003C_003E8__locals26.CS_0024_003C_003E8__locals1.session, ctx), (LazyThreadSafetyMode)2)).GetValueAsync(CS_0024_003C_003E8__locals26.CS_0024_003C_003E8__locals1.ct).ConfigureAwait(false)309							.GetAwaiter();310						if (!val5.IsCompleted)311						{312							num = (_003C_003E1__state = 0);313							_003C_003Eu__1 = val5;314							((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).AwaitUnsafeOnCompleted<ConfiguredTaskAwaiter<bool>, _003C_003CCheckOrgAssignmentComplianceAsync_003Eb__4_003Ed>(ref val5, ref this);315							return;316						}317						goto IL_00d7;318					case 0:319						val5 = _003C_003Eu__1;320						_003C_003Eu__1 = default(ConfiguredTaskAwaiter<bool>);321						num = (_003C_003E1__state = -1);322						goto IL_00d7;323					case 1:324						val4 = _003C_003Eu__2;325						_003C_003Eu__2 = default(ConfiguredTaskAwaiter<IEntity>);326						num = (_003C_003E1__state = -1);327						goto IL_0187;328					case 2:329						val3 = _003C_003Eu__3;330						_003C_003Eu__3 = default(ConfiguredTaskAwaiter<string>);331						num = (_003C_003E1__state = -1);332						goto IL_0239;333					case 3:334						val = _003C_003Eu__4;335						_003C_003Eu__4 = default(ConfiguredValueTaskAwaiter<string>);336						num = (_003C_003E1__state = -1);337						goto IL_0301;338					case 4:339						val2 = _003C_003Eu__5;340						_003C_003Eu__5 = default(ConfiguredValueTaskAwaiter<double>);341						num = (_003C_003E1__state = -1);342						goto IL_039c;343					case 5:344						val2 = _003C_003Eu__5;345						_003C_003Eu__5 = default(ConfiguredValueTaskAwaiter<double>);346						num = (_003C_003E1__state = -1);347						goto IL_0444;348					case 6:349						{350							val = _003C_003Eu__4;351							_003C_003Eu__4 = default(ConfiguredValueTaskAwaiter<string>);352							num = (_003C_003E1__state = -1);353							goto IL_04dc;354						}355						IL_0239:356						text = val3.GetResult();357						goto IL_0242;358						IL_039c:359						num2 = val2.GetResult();360						goto IL_03b2;361						IL_0242:362						_003CdisplayElement_003E5__4 = text;363						_003Cdescription_003E5__5 = null;364						_003CriskIndex_003E5__6 = 0.0;365						_003CriskIndexReduced_003E5__7 = 0.0;366						ruleNumber = null;367						if (_003Crule_003E5__3 == null)368						{369							break;370						}371						val = _003Crule_003E5__3.GetDisplayValueAsync(CS_0024_003C_003E8__locals26.CS_0024_003C_003E8__locals1.session, "Description", CS_0024_003C_003E8__locals26.CS_0024_003C_003E8__locals1.ct).ConfigureAwait(false).GetAwaiter();372						if (!val.IsCompleted)373						{374							num = (_003C_003E1__state = 3);375							_003C_003Eu__4 = val;376							((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).AwaitUnsafeOnCompleted<ConfiguredValueTaskAwaiter<string>, _003C_003CCheckOrgAssignmentComplianceAsync_003Eb__4_003Ed>(ref val, ref this);377							return;378						}379						goto IL_0301;380						IL_00d7:381						result = val5.GetResult();382						_003CisNoEffectivePerson_003E5__2 = result;383						if (string.IsNullOrEmpty(CS_0024_003C_003E8__locals26.uidComplianceRule))384						{385							entity = null;386							goto IL_0190;387						}388						val4 = CS_0024_003C_003E8__locals26.CS_0024_003C_003E8__locals1.session.Source().GetAsync(new DbObjectKey("ComplianceRule", CS_0024_003C_003E8__locals26.uidComplianceRule), EntityLoadType.ReadOnly, CS_0024_003C_003E8__locals26.CS_0024_003C_003E8__locals1.ct).ConfigureAwait(false)389							.GetAwaiter();390						if (!val4.IsCompleted)391						{392							num = (_003C_003E1__state = 1);393							_003C_003Eu__2 = val4;394							((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).AwaitUnsafeOnCompleted<ConfiguredTaskAwaiter<IEntity>, _003C_003CCheckOrgAssignmentComplianceAsync_003Eb__4_003Ed>(ref val4, ref this);395							return;396						}397						goto IL_0187;398						IL_04dc:399						ruleNumber = val.GetResult();400						break;401						IL_03b2:402						_003CriskIndex_003E5__6 = num2;403						if (CS_0024_003C_003E8__locals26.CS_0024_003C_003E8__locals1.hasRiskIndex)404						{405							val2 = _003Crule_003E5__3.GetValueAsync<double>("RiskIndexReduced", CS_0024_003C_003E8__locals26.CS_0024_003C_003E8__locals1.ct).ConfigureAwait(false).GetAwaiter();406							if (!val2.IsCompleted)407							{408								num = (_003C_003E1__state = 5);409								_003C_003Eu__5 = val2;410								((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).AwaitUnsafeOnCompleted<ConfiguredValueTaskAwaiter<double>, _003C_003CCheckOrgAssignmentComplianceAsync_003Eb__4_003Ed>(ref val2, ref this);411								return;412							}413							goto IL_0444;414						}415						num2 = 0.0;416						goto IL_045a;417						IL_0301:418						text = val.GetResult();419						_003Cdescription_003E5__5 = text;420						if (CS_0024_003C_003E8__locals26.CS_0024_003C_003E8__locals1.hasRiskIndex)421						{422							val2 = _003Crule_003E5__3.GetValueAsync<double>("RiskIndex", CS_0024_003C_003E8__locals26.CS_0024_003C_003E8__locals1.ct).ConfigureAwait(false).GetAwaiter();423							if (!val2.IsCompleted)424							{425								num = (_003C_003E1__state = 4);426								_003C_003Eu__5 = val2;427								((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).AwaitUnsafeOnCompleted<ConfiguredValueTaskAwaiter<double>, _003C_003CCheckOrgAssignmentComplianceAsync_003Eb__4_003Ed>(ref val2, ref this);428								return;429							}430							goto IL_039c;431						}432						num2 = 0.0;433						goto IL_03b2;434						IL_0187:435						entity = val4.GetResult();436						goto IL_0190;437						IL_0190:438						_003Crule_003E5__3 = entity;439						if (string.IsNullOrEmpty(CS_0024_003C_003E8__locals26.objKey))440						{441							text = null;442							goto IL_0242;443						}444						val3 = CS_0024_003C_003E8__locals26.CS_0024_003C_003E8__locals1._003C_003E4__this.GetDisplayAsync(CS_0024_003C_003E8__locals26.CS_0024_003C_003E8__locals1.session, new DbObjectKey(CS_0024_003C_003E8__locals26.objKey), CS_0024_003C_003E8__locals26.CS_0024_003C_003E8__locals1.ct).ConfigureAwait(false).GetAwaiter();445						if (!val3.IsCompleted)446						{447							num = (_003C_003E1__state = 2);448							_003C_003Eu__3 = val3;449							((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).AwaitUnsafeOnCompleted<ConfiguredTaskAwaiter<string>, _003C_003CCheckOrgAssignmentComplianceAsync_003Eb__4_003Ed>(ref val3, ref this);450							return;451						}452						goto IL_0239;453						IL_045a:454						_003CriskIndexReduced_003E5__7 = num2;455						val = _003Crule_003E5__3.GetValueAsync<string>("RuleNumber", CS_0024_003C_003E8__locals26.CS_0024_003C_003E8__locals1.ct).ConfigureAwait(false).GetAwaiter();456						if (!val.IsCompleted)457						{458							num = (_003C_003E1__state = 6);459							_003C_003Eu__4 = val;460							((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).AwaitUnsafeOnCompleted<ConfiguredValueTaskAwaiter<string>, _003C_003CCheckOrgAssignmentComplianceAsync_003Eb__4_003Ed>(ref val, ref this);461							return;462						}463						goto IL_04dc;464						IL_0444:465						num2 = val2.GetResult();466						goto IL_045a;467					}468					CS_0024_003C_003E8__locals26.CS_0024_003C_003E8__locals1.rlist.Add(new ComplianceViolation469					{470						ViolationType = "Org",471						UidComplianceRule = CS_0024_003C_003E8__locals26.uidComplianceRule,472						UidComplianceSubRule = CS_0024_003C_003E8__locals26.uidComplianceSubRule,473						UidNonCompliance = _003Crule_003E5__3?.GetValue("UID_NonCompliance").String,474						ObjectKeyElement = CS_0024_003C_003E8__locals26.objKey,475						DisplayElement = _003CdisplayElement_003E5__4,476						UidShoppingCartItem = CS_0024_003C_003E8__locals26.info.UidShoppingCartItem,477						DisplayRule = _003Crule_003E5__3?.Display,478						RuleNumber = ruleNumber,479						Description = _003Cdescription_003E5__5,480						RiskIndex = _003CriskIndex_003E5__6,481						RiskIndexReduced = _003CriskIndexReduced_003E5__7,482						IsNoEffectivePerson = _003CisNoEffectivePerson_003E5__2483					});484				}485				catch (System.Exception exception)486				{487					_003C_003E1__state = -2;488					_003Crule_003E5__3 = null;489					_003CdisplayElement_003E5__4 = null;490					_003Cdescription_003E5__5 = null;491					((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).SetException(exception);492					return;493				}494				_003C_003E1__state = -2;495				_003Crule_003E5__3 = null;496				_003CdisplayElement_003E5__4 = null;497				_003Cdescription_003E5__5 = null;498				((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).SetResult();499			}500501			[DebuggerHidden]502			private void SetStateMachine(IAsyncStateMachine stateMachine)503			{504				((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).SetStateMachine(stateMachine);505			}506		}507508		public string uidPwo;509510		public string uidOrg;511512		public string uidComplianceRule;513514		public string objKey;515516		public string uidComplianceSubRule;517518		public ItemInfo info;519520		public _003C_003Ec__DisplayClass17_0 CS_0024_003C_003E8__locals1;521522		public Func<CancellationToken, System.Threading.Tasks.Task<bool>> _003C_003E9__6;523524		public Func<string, AsyncLazy<bool>> _003C_003E9__5;525526		internal bool _003CCheckOrgAssignmentComplianceAsync_003Eb__3(ItemInfo i)527		{528			return string.Equals(uidPwo, i.UidPersonWantsOrg);529		}530531		[AsyncStateMachine(typeof(_003C_003CCheckOrgAssignmentComplianceAsync_003Eb__4_003Ed))]532		internal System.Threading.Tasks.Task _003CCheckOrgAssignmentComplianceAsync_003Eb__4()533		{534			//IL_0002: Unknown result type (might be due to invalid IL or missing references)535			//IL_0007: Unknown result type (might be due to invalid IL or missing references)536			_003C_003CCheckOrgAssignmentComplianceAsync_003Eb__4_003Ed _003C_003CCheckOrgAssignmentComplianceAsync_003Eb__4_003Ed = default(_003C_003CCheckOrgAssignmentComplianceAsync_003Eb__4_003Ed);537			_003C_003CCheckOrgAssignmentComplianceAsync_003Eb__4_003Ed._003C_003Et__builder = AsyncTaskMethodBuilder.Create();538			_003C_003CCheckOrgAssignmentComplianceAsync_003Eb__4_003Ed._003C_003E4__this = this;539			_003C_003CCheckOrgAssignmentComplianceAsync_003Eb__4_003Ed._003C_003E1__state = -1;540			((AsyncTaskMethodBuilder)(ref _003C_003CCheckOrgAssignmentComplianceAsync_003Eb__4_003Ed._003C_003Et__builder)).Start<_003C_003CCheckOrgAssignmentComplianceAsync_003Eb__4_003Ed>(ref _003C_003CCheckOrgAssignmentComplianceAsync_003Eb__4_003Ed);541			return ((AsyncTaskMethodBuilder)(ref _003C_003CCheckOrgAssignmentComplianceAsync_003Eb__4_003Ed._003C_003Et__builder)).Task;542		}543544		internal AsyncLazy<bool> _003CCheckOrgAssignmentComplianceAsync_003Eb__5(string key)545		{546			return new AsyncLazy<bool>((CancellationToken ctx) => GetIsNoInheritPersonAsync(uidOrg, CS_0024_003C_003E8__locals1.session, ctx), (LazyThreadSafetyMode)2);547		}548549		internal System.Threading.Tasks.Task<bool> _003CCheckOrgAssignmentComplianceAsync_003Eb__6(CancellationToken ctx)550		{551			//IL_0011: Unknown result type (might be due to invalid IL or missing references)552			return GetIsNoInheritPersonAsync(uidOrg, CS_0024_003C_003E8__locals1.session, ctx);553		}554	}555556	[CompilerGenerated]557	private sealed class _003C_003Ec__DisplayClass18_0558	{559		public ISession session;560561		public CancellationToken ct;562563		public CartComplianceCheck _003C_003E4__this;564565		public bool hasRiskIndex;566567		public List<ComplianceViolation> rlist;568	}569570	[CompilerGenerated]571	private sealed class _003C_003Ec__DisplayClass18_1572	{573		[StructLayout((LayoutKind)3)]574		private struct _003C_003CCheckEsetAssignmentComplianceAsync_003Eb__4_003Ed : IAsyncStateMachine575		{576			public int _003C_003E1__state;577578			public AsyncTaskMethodBuilder _003C_003Et__builder;579580			public _003C_003Ec__DisplayClass18_1 _003C_003E4__this;581582			private IEntity _003Crule_003E5__2;583584			private string _003CdisplayElement_003E5__3;585586			private string _003Cdescription_003E5__4;587588			private double _003CriskIndex_003E5__5;589590			private double _003CriskIndexReduced_003E5__6;591592			private ConfiguredTaskAwaiter<IEntity> _003C_003Eu__1;593594			private ConfiguredTaskAwaiter<string> _003C_003Eu__2;595596			private ConfiguredValueTaskAwaiter<string> _003C_003Eu__3;597598			private ConfiguredValueTaskAwaiter<double> _003C_003Eu__4;599600			private void MoveNext()601			{602				//IL_00b0: Unknown result type (might be due to invalid IL or missing references)603				//IL_00b5: Unknown result type (might be due to invalid IL or missing references)604				//IL_00bd: Unknown result type (might be due to invalid IL or missing references)605				//IL_0160: Unknown result type (might be due to invalid IL or missing references)606				//IL_0165: Unknown result type (might be due to invalid IL or missing references)607				//IL_016d: Unknown result type (might be due to invalid IL or missing references)608				//IL_0228: Unknown result type (might be due to invalid IL or missing references)609				//IL_022d: Unknown result type (might be due to invalid IL or missing references)610				//IL_0235: Unknown result type (might be due to invalid IL or missing references)611				//IL_02c3: Unknown result type (might be due to invalid IL or missing references)612				//IL_02c8: Unknown result type (might be due to invalid IL or missing references)613				//IL_02d0: Unknown result type (might be due to invalid IL or missing references)614				//IL_036b: Unknown result type (might be due to invalid IL or missing references)615				//IL_0370: Unknown result type (might be due to invalid IL or missing references)616				//IL_0378: Unknown result type (might be due to invalid IL or missing references)617				//IL_0403: Unknown result type (might be due to invalid IL or missing references)618				//IL_0408: Unknown result type (might be due to invalid IL or missing references)619				//IL_0410: Unknown result type (might be due to invalid IL or missing references)620				//IL_0067: Unknown result type (might be due to invalid IL or missing references)621				//IL_0072: Unknown result type (might be due to invalid IL or missing references)622				//IL_0077: Unknown result type (might be due to invalid IL or missing references)623				//IL_007b: Unknown result type (might be due to invalid IL or missing references)624				//IL_0080: Unknown result type (might be due to invalid IL or missing references)625				//IL_0276: Unknown result type (might be due to invalid IL or missing references)626				//IL_0285: Unknown result type (might be due to invalid IL or missing references)627				//IL_028a: Unknown result type (might be due to invalid IL or missing references)628				//IL_028e: Unknown result type (might be due to invalid IL or missing references)629				//IL_0293: Unknown result type (might be due to invalid IL or missing references)630				//IL_03b6: Unknown result type (might be due to invalid IL or missing references)631				//IL_03c5: Unknown result type (might be due to invalid IL or missing references)632				//IL_03ca: Unknown result type (might be due to invalid IL or missing references)633				//IL_03ce: Unknown result type (might be due to invalid IL or missing references)634				//IL_03d3: Unknown result type (might be due to invalid IL or missing references)635				//IL_0095: Unknown result type (might be due to invalid IL or missing references)636				//IL_0097: Unknown result type (might be due to invalid IL or missing references)637				//IL_0117: Unknown result type (might be due to invalid IL or missing references)638				//IL_0122: Unknown result type (might be due to invalid IL or missing references)639				//IL_0127: Unknown result type (might be due to invalid IL or missing references)640				//IL_012b: Unknown result type (might be due to invalid IL or missing references)641				//IL_0130: Unknown result type (might be due to invalid IL or missing references)642				//IL_01db: Unknown result type (might be due to invalid IL or missing references)643				//IL_01ea: Unknown result type (might be due to invalid IL or missing references)644				//IL_01ef: Unknown result type (might be due to invalid IL or missing references)645				//IL_01f3: Unknown result type (might be due to invalid IL or missing references)646				//IL_01f8: Unknown result type (might be due to invalid IL or missing references)647				//IL_02a8: Unknown result type (might be due to invalid IL or missing references)648				//IL_02aa: Unknown result type (might be due to invalid IL or missing references)649				//IL_031e: Unknown result type (might be due to invalid IL or missing references)650				//IL_032d: Unknown result type (might be due to invalid IL or missing references)651				//IL_0332: Unknown result type (might be due to invalid IL or missing references)652				//IL_0336: Unknown result type (might be due to invalid IL or missing references)653				//IL_033b: Unknown result type (might be due to invalid IL or missing references)654				//IL_03e8: Unknown result type (might be due to invalid IL or missing references)655				//IL_03ea: Unknown result type (might be due to invalid IL or missing references)656				//IL_0145: Unknown result type (might be due to invalid IL or missing references)657				//IL_0147: Unknown result type (might be due to invalid IL or missing references)658				//IL_020d: Unknown result type (might be due to invalid IL or missing references)659				//IL_020f: Unknown result type (might be due to invalid IL or missing references)660				//IL_0350: Unknown result type (might be due to invalid IL or missing references)661				//IL_0352: Unknown result type (might be due to invalid IL or missing references)662				int num = _003C_003E1__state;663				_003C_003Ec__DisplayClass18_1 _003C_003Ec__DisplayClass18_ = _003C_003E4__this;664				try665				{666					IEntity entity;667					ConfiguredTaskAwaiter<IEntity> val4;668					ConfiguredTaskAwaiter<string> val3;669					ConfiguredValueTaskAwaiter<double> val2;670					ConfiguredValueTaskAwaiter<string> val;671					string ruleNumber;672					double num2;673					string result;674					switch (num)675					{676					default:677						if (string.IsNullOrEmpty(_003C_003Ec__DisplayClass18_.uidComplianceRule))678						{679							entity = null;680							goto IL_00d4;681						}682						val4 = _003C_003Ec__DisplayClass18_.CS_0024_003C_003E8__locals1.session.Source().GetAsync(new DbObjectKey("ComplianceRule", _003C_003Ec__DisplayClass18_.uidComplianceRule), EntityLoadType.ReadOnly, _003C_003Ec__DisplayClass18_.CS_0024_003C_003E8__locals1.ct).ConfigureAwait(false)683							.GetAwaiter();684						if (!val4.IsCompleted)685						{686							num = (_003C_003E1__state = 0);687							_003C_003Eu__1 = val4;688							((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).AwaitUnsafeOnCompleted<ConfiguredTaskAwaiter<IEntity>, _003C_003CCheckEsetAssignmentComplianceAsync_003Eb__4_003Ed>(ref val4, ref this);689							return;690						}691						goto IL_00cc;692					case 0:693						val4 = _003C_003Eu__1;694						_003C_003Eu__1 = default(ConfiguredTaskAwaiter<IEntity>);695						num = (_003C_003E1__state = -1);696						goto IL_00cc;697					case 1:698						val3 = _003C_003Eu__2;699						_003C_003Eu__2 = default(ConfiguredTaskAwaiter<string>);700						num = (_003C_003E1__state = -1);701						goto IL_017c;702					case 2:703						val = _003C_003Eu__3;704						_003C_003Eu__3 = default(ConfiguredValueTaskAwaiter<string>);705						num = (_003C_003E1__state = -1);706						goto IL_0244;707					case 3:708						val2 = _003C_003Eu__4;709						_003C_003Eu__4 = default(ConfiguredValueTaskAwaiter<double>);710						num = (_003C_003E1__state = -1);711						goto IL_02df;712					case 4:713						val2 = _003C_003Eu__4;714						_003C_003Eu__4 = default(ConfiguredValueTaskAwaiter<double>);715						num = (_003C_003E1__state = -1);716						goto IL_0387;717					case 5:718						{719							val = _003C_003Eu__3;720							_003C_003Eu__3 = default(ConfiguredValueTaskAwaiter<string>);721							num = (_003C_003E1__state = -1);722							goto IL_041f;723						}724						IL_041f:725						ruleNumber = val.GetResult();726						break;727						IL_02f5:728						_003CriskIndex_003E5__5 = num2;729						if (_003C_003Ec__DisplayClass18_.CS_0024_003C_003E8__locals1.hasRiskIndex)730						{731							val2 = _003Crule_003E5__2.GetValueAsync<double>("RiskIndexReduced", _003C_003Ec__DisplayClass18_.CS_0024_003C_003E8__locals1.ct).ConfigureAwait(false).GetAwaiter();732							if (!val2.IsCompleted)733							{734								num = (_003C_003E1__state = 4);735								_003C_003Eu__4 = val2;736								((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).AwaitUnsafeOnCompleted<ConfiguredValueTaskAwaiter<double>, _003C_003CCheckEsetAssignmentComplianceAsync_003Eb__4_003Ed>(ref val2, ref this);737								return;738							}739							goto IL_0387;740						}741						num2 = 0.0;742						goto IL_039d;743						IL_0244:744						result = val.GetResult();745						_003Cdescription_003E5__4 = result;746						if (_003C_003Ec__DisplayClass18_.CS_0024_003C_003E8__locals1.hasRiskIndex)747						{748							val2 = _003Crule_003E5__2.GetValueAsync<double>("RiskIndex", _003C_003Ec__DisplayClass18_.CS_0024_003C_003E8__locals1.ct).ConfigureAwait(false).GetAwaiter();749							if (!val2.IsCompleted)750							{751								num = (_003C_003E1__state = 3);752								_003C_003Eu__4 = val2;753								((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).AwaitUnsafeOnCompleted<ConfiguredValueTaskAwaiter<double>, _003C_003CCheckEsetAssignmentComplianceAsync_003Eb__4_003Ed>(ref val2, ref this);754								return;755							}756							goto IL_02df;757						}758						num2 = 0.0;759						goto IL_02f5;760						IL_00cc:761						entity = val4.GetResult();762						goto IL_00d4;763						IL_00d4:764						_003Crule_003E5__2 = entity;765						if (string.IsNullOrEmpty(_003C_003Ec__DisplayClass18_.objKey))766						{767							result = null;768							goto IL_0185;769						}770						val3 = _003C_003Ec__DisplayClass18_.CS_0024_003C_003E8__locals1._003C_003E4__this.GetDisplayAsync(_003C_003Ec__DisplayClass18_.CS_0024_003C_003E8__locals1.session, new DbObjectKey(_003C_003Ec__DisplayClass18_.objKey), _003C_003Ec__DisplayClass18_.CS_0024_003C_003E8__locals1.ct).ConfigureAwait(false).GetAwaiter();771						if (!val3.IsCompleted)772						{773							num = (_003C_003E1__state = 1);774							_003C_003Eu__2 = val3;775							((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).AwaitUnsafeOnCompleted<ConfiguredTaskAwaiter<string>, _003C_003CCheckEsetAssignmentComplianceAsync_003Eb__4_003Ed>(ref val3, ref this);776							return;777						}778						goto IL_017c;779						IL_039d:780						_003CriskIndexReduced_003E5__6 = num2;781						val = _003Crule_003E5__2.GetValueAsync<string>("RuleNumber", _003C_003Ec__DisplayClass18_.CS_0024_003C_003E8__locals1.ct).ConfigureAwait(false).GetAwaiter();782						if (!val.IsCompleted)783						{784							num = (_003C_003E1__state = 5);785							_003C_003Eu__3 = val;786							((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).AwaitUnsafeOnCompleted<ConfiguredValueTaskAwaiter<string>, _003C_003CCheckEsetAssignmentComplianceAsync_003Eb__4_003Ed>(ref val, ref this);787							return;788						}789						goto IL_041f;790						IL_0387:791						num2 = val2.GetResult();792						goto IL_039d;793						IL_02df:794						num2 = val2.GetResult();795						goto IL_02f5;796						IL_017c:797						result = val3.GetResult();798						goto IL_0185;799						IL_0185:800						_003CdisplayElement_003E5__3 = result;801						_003Cdescription_003E5__4 = null;802						_003CriskIndex_003E5__5 = 0.0;803						_003CriskIndexReduced_003E5__6 = 0.0;804						ruleNumber = null;805						if (_003Crule_003E5__2 == null)806						{807							break;808						}809						val = _003Crule_003E5__2.GetDisplayValueAsync(_003C_003Ec__DisplayClass18_.CS_0024_003C_003E8__locals1.session, "Description", _003C_003Ec__DisplayClass18_.CS_0024_003C_003E8__locals1.ct).ConfigureAwait(false).GetAwaiter();810						if (!val.IsCompleted)811						{812							num = (_003C_003E1__state = 2);813							_003C_003Eu__3 = val;814							((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).AwaitUnsafeOnCompleted<ConfiguredValueTaskAwaiter<string>, _003C_003CCheckEsetAssignmentComplianceAsync_003Eb__4_003Ed>(ref val, ref this);815							return;816						}817						goto IL_0244;818					}819					_003C_003Ec__DisplayClass18_.CS_0024_003C_003E8__locals1.rlist.Add(new ComplianceViolation820					{821						ViolationType = "Org",822						UidComplianceRule = _003C_003Ec__DisplayClass18_.uidComplianceRule,823						UidComplianceSubRule = _003C_003Ec__DisplayClass18_.uidComplianceSubRule,824						UidNonCompliance = _003Crule_003E5__2?.GetValue("UID_NonCompliance").String,825						ObjectKeyElement = _003C_003Ec__DisplayClass18_.objKey,826						DisplayElement = _003CdisplayElement_003E5__3,827						UidShoppingCartItem = _003C_003Ec__DisplayClass18_.info.UidShoppingCartItem,828						DisplayRule = _003Crule_003E5__2?.Display,829						Description = _003Cdescription_003E5__4,830						RuleNumber = ruleNumber,831						RiskIndex = _003CriskIndex_003E5__5,832						RiskIndexReduced = _003CriskIndexReduced_003E5__6,833						IsNoEffectivePerson = false834					});835				}836				catch (System.Exception exception)837				{838					_003C_003E1__state = -2;839					_003Crule_003E5__2 = null;840					_003CdisplayElement_003E5__3 = null;841					_003Cdescription_003E5__4 = null;842					((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).SetException(exception);843					return;844				}845				_003C_003E1__state = -2;846				_003Crule_003E5__2 = null;847				_003CdisplayElement_003E5__3 = null;848				_003Cdescription_003E5__4 = null;849				((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).SetResult();850			}851852			[DebuggerHidden]853			private void SetStateMachine(IAsyncStateMachine stateMachine)854			{855				((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).SetStateMachine(stateMachine);856			}857		}858859		public string uidPwo;860861		public string uidComplianceRule;862863		public string objKey;864865		public string uidComplianceSubRule;866867		public ItemInfo info;868869		public _003C_003Ec__DisplayClass18_0 CS_0024_003C_003E8__locals1;870871		internal bool _003CCheckEsetAssignmentComplianceAsync_003Eb__3(ItemInfo i)872		{873			return string.Equals(uidPwo, i.UidPersonWantsOrg);874		}875876		[AsyncStateMachine(typeof(_003C_003CCheckEsetAssignmentComplianceAsync_003Eb__4_003Ed))]877		internal System.Threading.Tasks.Task _003CCheckEsetAssignmentComplianceAsync_003Eb__4()878		{879			//IL_0002: Unknown result type (might be due to invalid IL or missing references)880			//IL_0007: Unknown result type (might be due to invalid IL or missing references)881			_003C_003CCheckEsetAssignmentComplianceAsync_003Eb__4_003Ed _003C_003CCheckEsetAssignmentComplianceAsync_003Eb__4_003Ed = default(_003C_003CCheckEsetAssignmentComplianceAsync_003Eb__4_003Ed);882			_003C_003CCheckEsetAssignmentComplianceAsync_003Eb__4_003Ed._003C_003Et__builder = AsyncTaskMethodBuilder.Create();883			_003C_003CCheckEsetAssignmentComplianceAsync_003Eb__4_003Ed._003C_003E4__this = this;884			_003C_003CCheckEsetAssignmentComplianceAsync_003Eb__4_003Ed._003C_003E1__state = -1;885			((AsyncTaskMethodBuilder)(ref _003C_003CCheckEsetAssignmentComplianceAsync_003Eb__4_003Ed._003C_003Et__builder)).Start<_003C_003CCheckEsetAssignmentComplianceAsync_003Eb__4_003Ed>(ref _003C_003CCheckEsetAssignmentComplianceAsync_003Eb__4_003Ed);886			return ((AsyncTaskMethodBuilder)(ref _003C_003CCheckEsetAssignmentComplianceAsync_003Eb__4_003Ed._003C_003Et__builder)).Task;887		}888	}889890	[CompilerGenerated]891	private sealed class _003C_003Ec__DisplayClass21_0892	{893		public string uidPwo;894895		public CartComplianceCheck _003C_003E4__this;896897		public ISession session;898899		public CancellationToken ct;900901		public Func<CCSPwO, bool> _003C_003E9__0;902903		public Func<CCSPwO, ContributingEntitlement> _003C_003E9__4;904905		internal bool _003CComplianceCheckForPwoAsync_003Eb__0(CCSPwO ccsPwo)906		{907			if (ccsPwo.IsNewObject)908			{909				return string.Equals(ccsPwo.UID_PersonWantsOrg, uidPwo, (StringComparison)3);910			}911			return false;912		}913914		internal ContributingEntitlement _003CComplianceCheckForPwoAsync_003Eb__4(CCSPwO other)915		{916			_003C_003Ec__DisplayClass21_2 CS_0024_003C_003E8__locals5 = new _003C_003Ec__DisplayClass21_2917			{918				CS_0024_003C_003E8__locals2 = this,919				other = other920			};921			return new ContributingEntitlement922			{923				ObjectKeyEntitlement = CS_0024_003C_003E8__locals5.other.ObjectKeyElement.ToXmlString(),924				Display = SyncActions.Do<string>(() => CS_0024_003C_003E8__locals5.CS_0024_003C_003E8__locals2._003C_003E4__this.GetDisplayAsync(CS_0024_003C_003E8__locals5.CS_0024_003C_003E8__locals2.session, CS_0024_003C_003E8__locals5.other.ObjectKeyElement, CS_0024_003C_003E8__locals5.CS_0024_003C_003E8__locals2.ct))925			};926		}927	}928929	[CompilerGenerated]930	private sealed class _003C_003Ec__DisplayClass21_1931	{932		public CCSPwO ccsPwo;933934		public _003C_003Ec__DisplayClass21_0 CS_0024_003C_003E8__locals1;935936		internal bool _003CComplianceCheckForPwoAsync_003Eb__1(ItemInfo i)937		{938			return string.Equals(i.UidPersonWantsOrg, ccsPwo.UID_PersonWantsOrg);939		}940941		internal bool _003CComplianceCheckForPwoAsync_003Eb__2(CCSPwO other)942		{943			if (!other.IsNewObject && other.ObjectKeyElement != null && string.Equals(other.UID_ComplianceRule, ccsPwo.UID_ComplianceRule))944			{945				return string.Equals(other.UID_PersonWantsOrg, CS_0024_003C_003E8__locals1.uidPwo, (StringComparison)3);946			}947			return false;948		}949	}950951	[CompilerGenerated]952	private sealed class _003C_003Ec__DisplayClass21_2953	{954		public CCSPwO other;955956		public _003C_003Ec__DisplayClass21_0 CS_0024_003C_003E8__locals2;957958		internal System.Threading.Tasks.Task<string> _003CComplianceCheckForPwoAsync_003Eb__5()959		{960			//IL_0027: Unknown result type (might be due to invalid IL or missing references)961			return CS_0024_003C_003E8__locals2._003C_003E4__this.GetDisplayAsync(CS_0024_003C_003E8__locals2.session, other.ObjectKeyElement, CS_0024_003C_003E8__locals2.ct);962		}963	}964965	[StructLayout((LayoutKind)3)]966	[CompilerGenerated]967	private struct _003CCheckAsync_003Ed__10 : IAsyncStateMachine968	{969		public int _003C_003E1__state;970971		public AsyncTaskMethodBuilder _003C_003Et__builder;972973		public ISession session;974975		public CancellationToken ct;976977		public CartComplianceCheck _003C_003E4__this;978979		public OrderInfo orderInfo;980981		public CartCheckResult checkResult;982983		private ConfiguredTaskAwaiter<string> _003C_003Eu__1;984985		private ConfiguredTaskAwaiter<List<ComplianceViolation>> _003C_003Eu__2;986987		private void MoveNext()988		{989			//IL_0070: Unknown result type (might be due to invalid IL or missing references)990			//IL_0075: Unknown result type (might be due to invalid IL or missing references)991			//IL_007c: Unknown result type (might be due to invalid IL or missing references)992			//IL_0113: Unknown result type (might be due to invalid IL or missing references)993			//IL_0118: Unknown result type (might be due to invalid IL or missing references)994			//IL_0120: Unknown result type (might be due to invalid IL or missing references)995			//IL_0029: Unknown result type (might be due to invalid IL or missing references)996			//IL_0034: Unknown result type (might be due to invalid IL or missing references)997			//IL_0039: Unknown result type (might be due to invalid IL or missing references)998			//IL_003d: Unknown result type (might be due to invalid IL or missing references)999			//IL_0042: Unknown result type (might be due to invalid IL or missing references)1000			//IL_0056: Unknown result type (might be due to invalid IL or missing references)1001			//IL_0057: Unknown result type (might be due to invalid IL or missing references)1002			//IL_00cd: Unknown result type (might be due to invalid IL or missing references)1003			//IL_00d8: Unknown result type (might be due to invalid IL or missing references)1004			//IL_00dd: Unknown result type (might be due to invalid IL or missing references)1005			//IL_00e1: Unknown result type (might be due to invalid IL or missing references)1006			//IL_00e6: Unknown result type (might be due to invalid IL or missing references)1007			//IL_00fb: Unknown result type (might be due to invalid IL or missing references)1008			//IL_00fd: Unknown result type (might be due to invalid IL or missing references)1009			int num = _003C_003E1__state;1010			CartComplianceCheck cartComplianceCheck = _003C_003E4__this;1011			try1012			{1013				ConfiguredTaskAwaiter<List<ComplianceViolation>> val;1014				ConfiguredTaskAwaiter<string> val2;1015				if (num != 0)1016				{1017					if (num == 1)1018					{1019						val = _003C_003Eu__2;1020						_003C_003Eu__2 = default(ConfiguredTaskAwaiter<List<ComplianceViolation>>);1021						num = (_003C_003E1__state = -1);1022						goto IL_012f;1023					}1024					val2 = session.Config().GetConfigParmAsync("QER\\ComplianceCheck", ct).ConfigureAwait(false)1025						.GetAwaiter();1026					if (!val2.IsCompleted)1027					{1028						num = (_003C_003E1__state = 0);1029						_003C_003Eu__1 = val2;1030						((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).AwaitUnsafeOnCompleted<ConfiguredTaskAwaiter<string>, _003CCheckAsync_003Ed__10>(ref val2, ref this);1031						return;1032					}1033				}1034				else1035				{1036					val2 = _003C_003Eu__1;1037					_003C_003Eu__1 = default(ConfiguredTaskAwaiter<string>);1038					num = (_003C_003E1__state = -1);1039				}1040				if (!(val2.GetResult() != "1") && cartComplianceCheck._config.CheckComplianceInCart)1041				{1042					val = cartComplianceCheck.GetViolationsAsync(session, orderInfo, ct).ConfigureAwait(false).GetAwaiter();1043					if (!val.IsCompleted)1044					{1045						num = (_003C_003E1__state = 1);1046						_003C_003Eu__2 = val;1047						((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).AwaitUnsafeOnCompleted<ConfiguredTaskAwaiter<List<ComplianceViolation>>, _003CCheckAsync_003Ed__10>(ref val, ref this);1048						return;1049					}1050					goto IL_012f;1051				}1052				Logger.Debug("CartComplianceCheck deactivated by configuration, skipping check.");1053				goto end_IL_000e;1054				IL_012f:1055				List<ComplianceViolation> result = val.GetResult();1056				cartComplianceCheck.WriteToCartItems(session, orderInfo, checkResult, result);1057				end_IL_000e:;1058			}1059			catch (System.Exception exception)1060			{1061				_003C_003E1__state = -2;1062				((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).SetException(exception);1063				return;1064			}1065			_003C_003E1__state = -2;1066			((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).SetResult();1067		}10681069		[DebuggerHidden]1070		private void SetStateMachine(IAsyncStateMachine stateMachine)1071		{1072			((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).SetStateMachine(stateMachine);1073		}1074	}10751076	[StructLayout((LayoutKind)3)]1077	[CompilerGenerated]1078	private struct _003CCheckEsetAssignmentComplianceAsync_003Ed__18 : IAsyncStateMachine1079	{1080		public int _003C_003E1__state;10811082		public AsyncTaskMethodBuilder<System.Collections.Generic.IEnumerable<ComplianceViolation>> _003C_003Et__builder;10831084		public ISession session;10851086		public CancellationToken ct;10871088		public CartComplianceCheck _003C_003E4__this;10891090		public bool hasRiskIndex;10911092		public OrderInfo orderInfo;10931094		private _003C_003Ec__DisplayClass18_0 _003C_003E8__1;10951096		private List<Func<System.Threading.Tasks.Task>> _003CdelayedActions_003E5__2;10971098		private ConfiguredTaskAwaiter<IDataReader> _003C_003Eu__1;10991100		private Enumerator<Func<System.Threading.Tasks.Task>> _003C_003E7__wrap2;11011102		private ConfiguredTaskAwaiter _003C_003Eu__2;11031104		private void MoveNext()1105		{1106			//IL_0195: Unknown result type (might be due to invalid IL or missing references)1107			//IL_019a: Unknown result type (might be due to invalid IL or missing references)1108			//IL_01a2: Unknown result type (might be due to invalid IL or missing references)1109			//IL_0037: Unknown result type (might be due to invalid IL or missing references)1110			//IL_003c: Unknown result type (might be due to invalid IL or missing references)1111			//IL_0334: Unknown result type (might be due to invalid IL or missing references)1112			//IL_0339: Unknown result type (might be due to invalid IL or missing references)1113			//IL_0341: Unknown result type (might be due to invalid IL or missing references)1114			//IL_02d4: Unknown result type (might be due to invalid IL or missing references)1115			//IL_02d9: Unknown result type (might be due to invalid IL or missing references)1116			//IL_02f6: Unknown result type (might be due to invalid IL or missing references)1117			//IL_02fb: Unknown result type (might be due to invalid IL or missing references)1118			//IL_02ff: Unknown result type (might be due to invalid IL or missing references)1119			//IL_0304: Unknown result type (might be due to invalid IL or missing references)1120			//IL_014c: Unknown result type (might be due to invalid IL or missing references)1121			//IL_0157: Unknown result type (might be due to invalid IL or missing references)1122			//IL_015c: Unknown result type (might be due to invalid IL or missing references)1123			//IL_0160: Unknown result type (might be due to invalid IL or missing references)1124			//IL_0165: Unknown result type (might be due to invalid IL or missing references)1125			//IL_0319: Unknown result type (might be due to invalid IL or missing references)1126			//IL_031b: Unknown result type (might be due to invalid IL or missing references)1127			//IL_0382: Unknown result type (might be due to invalid IL or missing references)1128			//IL_017a: Unknown result type (might be due to invalid IL or missing references)1129			//IL_017c: Unknown result type (might be due to invalid IL or missing references)1130			int num = _003C_003E1__state;1131			System.Collections.Generic.IEnumerable<ComplianceViolation> result2;1132			try1133			{1134				ConfiguredTaskAwaiter<IDataReader> val;1135				if (num != 0)1136				{1137					if (num == 1)1138					{1139						goto IL_02df;1140					}1141					_003C_003E8__1 = new _003C_003Ec__DisplayClass18_0();1142					_003C_003E8__1.session = session;1143					_003C_003E8__1.ct = ct;1144					_003C_003E8__1._003C_003E4__this = _003C_003E4__this;1145					_003C_003E8__1.hasRiskIndex = hasRiskIndex;1146					string[] array = Enumerable.ToArray<string>(Enumerable.Select<string, string>(Enumerable.Where<string>((System.Collections.Generic.IEnumerable<string>)orderInfo.Items.Select<ItemInfo, string>((ItemInfo i) => i.UidPersonWantsOrg), (Func<string, bool>)((string i) => !string.IsNullOrEmpty(i))), (Func<string, string>)((string i) => new DbObjectKey("PersonWantsOrg", i).ToXmlString())));1147					_003C_003E8__1.rlist = new List<ComplianceViolation>();1148					if (!Enumerable.Any<string>((System.Collections.Generic.IEnumerable<string>)array))1149					{1150						goto IL_038f;1151					}1152					string text = string.Join("|", array);1153					Logger.Info<string>("Checking eset assignment compliance: {0}", text);1154					_003CdelayedActions_003E5__2 = new List<Func<System.Threading.Tasks.Task>>();1155					val = _003C_003E8__1.session.GetLimitedSqlAsync("RMS_FTCCSESetCheckWithPWO_ShoppingCart", new QueryParameter[1] { QueryParameter.Create("ObjecKeysOfPWO", text) }, _003C_003E8__1.ct).ConfigureAwait(false).GetAwaiter();1156					if (!val.IsCompleted)1157					{1158						num = (_003C_003E1__state = 0);1159						_003C_003Eu__1 = val;1160						_003C_003Et__builder.AwaitUnsafeOnCompleted<ConfiguredTaskAwaiter<IDataReader>, _003CCheckEsetAssignmentComplianceAsync_003Ed__18>(ref val, ref this);1161						return;1162					}1163				}1164				else1165				{1166					val = _003C_003Eu__1;1167					_003C_003Eu__1 = default(ConfiguredTaskAwaiter<IDataReader>);1168					num = (_003C_003E1__state = -1);1169				}1170				IDataReader result = val.GetResult();1171				try1172				{1173					while (result.Read())1174					{1175						_003C_003Ec__DisplayClass18_1 CS_0024_003C_003E8__locals9 = new _003C_003Ec__DisplayClass18_1();1176						CS_0024_003C_003E8__locals9.CS_0024_003C_003E8__locals1 = _003C_003E8__1;1177						string argument = ((IDataRecord)result)["UID_ESet"] as string;1178						CS_0024_003C_003E8__locals9.uidPwo = ((IDataRecord)result)["UID_PersonWantsOrg"] as string;1179						CS_0024_003C_003E8__locals9.info = Enumerable.FirstOrDefault<ItemInfo>((System.Collections.Generic.IEnumerable<ItemInfo>)orderInfo.Items, (Func<ItemInfo, bool>)((ItemInfo i) => string.Equals(CS_0024_003C_003E8__locals9.uidPwo, i.UidPersonWantsOrg)));1180						if (CS_0024_003C_003E8__locals9.info == null)1181						{1182							Logger.Info<string>("Checking eset assignment compliance: violation found for {0} but PWO is unknown", argument);1183							continue;1184						}1185						Logger.Info<string>("Checking eset assignment compliance: violation found for {0}", argument);1186						CS_0024_003C_003E8__locals9.objKey = ((IDataRecord)result)["ObjectKeyElement"] as string;1187						CS_0024_003C_003E8__locals9.uidComplianceRule = ((IDataRecord)result)["UID_ComplianceRule"] as string;1188						CS_0024_003C_003E8__locals9.uidComplianceSubRule = ((IDataRecord)result)["UID_ComplianceSubRule"] as string;1189						_003CdelayedActions_003E5__2.Add((Func<System.Threading.Tasks.Task>)([AsyncStateMachine(typeof(_003C_003Ec__DisplayClass18_1._003C_003CCheckEsetAssignmentComplianceAsync_003Eb__4_003Ed))] () =>1190						{1191							//IL_0002: Unknown result type (might be due to invalid IL or missing references)1192							//IL_0007: Unknown result type (might be due to invalid IL or missing references)1193							_003C_003Ec__DisplayClass18_1._003C_003CCheckEsetAssignmentComplianceAsync_003Eb__4_003Ed _003C_003CCheckEsetAssignmentComplianceAsync_003Eb__4_003Ed = default(_003C_003Ec__DisplayClass18_1._003C_003CCheckEsetAssignmentComplianceAsync_003Eb__4_003Ed);1194							_003C_003CCheckEsetAssignmentComplianceAsync_003Eb__4_003Ed._003C_003Et__builder = AsyncTaskMethodBuilder.Create();1195							_003C_003CCheckEsetAssignmentComplianceAsync_003Eb__4_003Ed._003C_003E4__this = CS_0024_003C_003E8__locals9;1196							_003C_003CCheckEsetAssignmentComplianceAsync_003Eb__4_003Ed._003C_003E1__state = -1;1197							((AsyncTaskMethodBuilder)(ref _003C_003CCheckEsetAssignmentComplianceAsync_003Eb__4_003Ed._003C_003Et__builder)).Start<_003C_003Ec__DisplayClass18_1._003C_003CCheckEsetAssignmentComplianceAsync_003Eb__4_003Ed>(ref _003C_003CCheckEsetAssignmentComplianceAsync_003Eb__4_003Ed);1198							return ((AsyncTaskMethodBuilder)(ref _003C_003CCheckEsetAssignmentComplianceAsync_003Eb__4_003Ed._003C_003Et__builder)).Task;1199						}));1200					}1201				}1202				finally1203				{1204					if (num < 0)1205					{1206						((System.IDisposable)result)?.Dispose();1207					}1208				}1209				_003C_003E7__wrap2 = _003CdelayedActions_003E5__2.GetEnumerator();1210				goto IL_02df;1211				IL_02df:1212				try1213				{1214					if (num != 1)1215					{1216						goto IL_0357;1217					}1218					ConfiguredTaskAwaiter val2 = _003C_003Eu__2;1219					_003C_003Eu__2 = default(ConfiguredTaskAwaiter);1220					num = (_003C_003E1__state = -1);1221					goto IL_0350;1222					IL_0350:1223					((ConfiguredTaskAwaiter)(ref val2)).GetResult();1224					goto IL_0357;1225					IL_0357:1226					if (_003C_003E7__wrap2.MoveNext())1227					{1228						ConfiguredTaskAwaitable val3 = _003C_003E7__wrap2.Current.Invoke().ConfigureAwait(false);1229						val2 = ((ConfiguredTaskAwaitable)(ref val3)).GetAwaiter();1230						if (!((ConfiguredTaskAwaiter)(ref val2)).IsCompleted)1231						{1232							num = (_003C_003E1__state = 1);1233							_003C_003Eu__2 = val2;1234							_003C_003Et__builder.AwaitUnsafeOnCompleted<ConfiguredTaskAwaiter, _003CCheckEsetAssignmentComplianceAsync_003Ed__18>(ref val2, ref this);1235							return;1236						}1237						goto IL_0350;1238					}1239				}1240				finally1241				{1242					if (num < 0)1243					{1244						((System.IDisposable)_003C_003E7__wrap2/*cast due to .constrained prefix*/).Dispose();1245					}1246				}1247				_003C_003E7__wrap2 = default(Enumerator<Func<System.Threading.Tasks.Task>>);1248				_003CdelayedActions_003E5__2 = null;1249				goto IL_038f;1250				IL_038f:1251				result2 = (System.Collections.Generic.IEnumerable<ComplianceViolation>)_003C_003E8__1.rlist;1252			}1253			catch (System.Exception exception)1254			{1255				_003C_003E1__state = -2;1256				_003C_003E8__1 = null;1257				_003C_003Et__builder.SetException(exception);1258				return;1259			}1260			_003C_003E1__state = -2;1261			_003C_003E8__1 = null;1262			_003C_003Et__builder.SetResult(result2);1263		}12641265		[DebuggerHidden]1266		private void SetStateMachine(IAsyncStateMachine stateMachine)1267		{1268			_003C_003Et__builder.SetStateMachine(stateMachine);1269		}1270	}12711272	[StructLayout((LayoutKind)3)]1273	[CompilerGenerated]1274	private struct _003CCheckOrgAssignmentComplianceAsync_003Ed__17 : IAsyncStateMachine1275	{1276		public int _003C_003E1__state;12771278		public AsyncTaskMethodBuilder<System.Collections.Generic.IEnumerable<ComplianceViolation>> _003C_003Et__builder;12791280		public CartComplianceCheck _003C_003E4__this;12811282		public ISession session;12831284		public CancellationToken ct;12851286		public bool hasRiskIndex;12871288		public OrderInfo orderInfo;12891290		private _003C_003Ec__DisplayClass17_0 _003C_003E8__1;12911292		private List<Func<System.Threading.Tasks.Task>> _003CdelayedActions_003E5__2;12931294		private ConfiguredTaskAwaiter<IDataReader> _003C_003Eu__1;12951296		private Enumerator<Func<System.Threading.Tasks.Task>> _003C_003E7__wrap2;12971298		private ConfiguredTaskAwaiter _003C_003Eu__2;12991300		private void MoveNext()1301		{1302			//IL_01b7: Unknown result type (might be due to invalid IL or missing references)1303			//IL_01bc: Unknown result type (might be due to invalid IL or missing references)1304			//IL_01c4: Unknown result type (might be due to invalid IL or missing references)1305			//IL_004f: Unknown result type (might be due to invalid IL or missing references)1306			//IL_0054: Unknown result type (might be due to invalid IL or missing references)1307			//IL_0365: Unknown result type (might be due to invalid IL or missing references)1308			//IL_036a: Unknown result type (might be due to invalid IL or missing references)1309			//IL_0372: Unknown result type (might be due to invalid IL or missing references)1310			//IL_0305: Unknown result type (might be due to invalid IL or missing references)1311			//IL_030a: Unknown result type (might be due to invalid IL or missing references)1312			//IL_0327: Unknown result type (might be due to invalid IL or missing references)1313			//IL_032c: Unknown result type (might be due to invalid IL or missing references)1314			//IL_0330: Unknown result type (might be due to invalid IL or missing references)1315			//IL_0335: Unknown result type (might be due to invalid IL or missing references)1316			//IL_034a: Unknown result type (might be due to invalid IL or missing references)1317			//IL_034c: Unknown result type (might be due to invalid IL or missing references)1318			//IL_03b3: Unknown result type (might be due to invalid IL or missing references)1319			//IL_016e: Unknown result type (might be due to invalid IL or missing references)1320			//IL_0179: Unknown result type (might be due to invalid IL or missing references)1321			//IL_017e: Unknown result type (might be due to invalid IL or missing references)1322			//IL_0182: Unknown result type (might be due to invalid IL or missing references)1323			//IL_0187: Unknown result type (might be due to invalid IL or missing references)1324			//IL_019c: Unknown result type (might be due to invalid IL or missing references)1325			//IL_019e: Unknown result type (might be due to invalid IL or missing references)1326			int num = _003C_003E1__state;1327			CartComplianceCheck cartComplianceCheck = _003C_003E4__this;1328			System.Collections.Generic.IEnumerable<ComplianceViolation> result;1329			try1330			{1331				ConfiguredTaskAwaiter<IDataReader> val;1332				if (num == 0)1333				{1334					val = _003C_003Eu__1;1335					_003C_003Eu__1 = default(ConfiguredTaskAwaiter<IDataReader>);1336					num = (_003C_003E1__state = -1);1337					goto IL_01d3;1338				}1339				if (num == 1)1340				{1341					goto IL_0310;1342				}1343				_003C_003E8__1 = new _003C_003Ec__DisplayClass17_0();1344				_003C_003E8__1._003C_003E4__this = _003C_003E4__this;1345				_003C_003E8__1.session = session;1346				_003C_003E8__1.ct = ct;1347				_003C_003E8__1.hasRiskIndex = hasRiskIndex;1348				if (cartComplianceCheck._config.CheckRoleInherentCompliance)1349				{1350					string[] array = Enumerable.ToArray<string>(Enumerable.Select<string, string>(Enumerable.Where<string>((System.Collections.Generic.IEnumerable<string>)orderInfo.Items.Select<ItemInfo, string>((ItemInfo i) => i.UidPersonWantsOrg), (Func<string, bool>)((string i) => !string.IsNullOrEmpty(i))), (Func<string, string>)((string i) => new DbObjectKey("PersonWantsOrg", i).ToXmlString())));1351					_003C_003E8__1.rlist = new List<ComplianceViolation>();1352					if (Enumerable.Any<string>((System.Collections.Generic.IEnumerable<string>)array))1353					{1354						string text = string.Join("|", array);1355						Logger.Info<string>("Checking org assignment compliance: {0}", text);1356						_003CdelayedActions_003E5__2 = new List<Func<System.Threading.Tasks.Task>>();1357						val = _003C_003E8__1.session.GetLimitedSqlAsync("CPL_FTCCSOrgCheckWithPWO_ShoppingCart", new QueryParameter[1] { QueryParameter.Create("ObjecKeysOfPWO", text) }, _003C_003E8__1.ct).ConfigureAwait(false).GetAwaiter();1358						if (!val.IsCompleted)1359						{1360							num = (_003C_003E1__state = 0);1361							_003C_003Eu__1 = val;1362							_003C_003Et__builder.AwaitUnsafeOnCompleted<ConfiguredTaskAwaiter<IDataReader>, _003CCheckOrgAssignmentComplianceAsync_003Ed__17>(ref val, ref this);1363							return;1364						}1365						goto IL_01d3;1366					}1367					goto IL_03c0;1368				}1369				result = Enumerable.Empty<ComplianceViolation>();1370				goto end_IL_000e;1371				IL_03c0:1372				result = (System.Collections.Generic.IEnumerable<ComplianceViolation>)_003C_003E8__1.rlist;1373				goto end_IL_000e;1374				IL_01d3:1375				IDataReader result2 = val.GetResult();1376				try1377				{1378					while (result2.Read())1379					{1380						_003C_003Ec__DisplayClass17_1 CS_0024_003C_003E8__locals12 = new _003C_003Ec__DisplayClass17_1();1381						CS_0024_003C_003E8__locals12.CS_0024_003C_003E8__locals1 = _003C_003E8__1;1382						CS_0024_003C_003E8__locals12.uidOrg = ((IDataRecord)result2)["UID_Org"] as string;1383						CS_0024_003C_003E8__locals12.uidPwo = ((IDataRecord)result2)["UID_PersonWantsOrg"] as string;1384						CS_0024_003C_003E8__locals12.info = Enumerable.FirstOrDefault<ItemInfo>((System.Collections.Generic.IEnumerable<ItemInfo>)orderInfo.Items, (Func<ItemInfo, bool>)((ItemInfo i) => string.Equals(CS_0024_003C_003E8__locals12.uidPwo, i.UidPersonWantsOrg)));1385						if (CS_0024_003C_003E8__locals12.info == null)1386						{1387							Logger.Info<string>("Checking org assignment compliance: violation found for {0} but PWO is unknown", CS_0024_003C_003E8__locals12.uidOrg);1388							continue;1389						}1390						Logger.Info<string>("Checking org assignment compliance: violation found for {0}", CS_0024_003C_003E8__locals12.uidOrg);1391						CS_0024_003C_003E8__locals12.objKey = ((IDataRecord)result2)["ObjectKeyElement"] as string;1392						CS_0024_003C_003E8__locals12.uidComplianceRule = ((IDataRecord)result2)["UID_ComplianceRule"] as string;1393						CS_0024_003C_003E8__locals12.uidComplianceSubRule = ((IDataRecord)result2)["UID_ComplianceSubRule"] as string;1394						_003CdelayedActions_003E5__2.Add((Func<System.Threading.Tasks.Task>)([AsyncStateMachine(typeof(_003C_003Ec__DisplayClass17_1._003C_003CCheckOrgAssignmentComplianceAsync_003Eb__4_003Ed))] () =>1395						{1396							//IL_0002: Unknown result type (might be due to invalid IL or missing references)1397							//IL_0007: Unknown result type (might be due to invalid IL or missing references)1398							_003C_003Ec__DisplayClass17_1._003C_003CCheckOrgAssignmentComplianceAsync_003Eb__4_003Ed _003C_003CCheckOrgAssignmentComplianceAsync_003Eb__4_003Ed = default(_003C_003Ec__DisplayClass17_1._003C_003CCheckOrgAssignmentComplianceAsync_003Eb__4_003Ed);1399							_003C_003CCheckOrgAssignmentComplianceAsync_003Eb__4_003Ed._003C_003Et__builder = AsyncTaskMethodBuilder.Create();1400							_003C_003CCheckOrgAssignmentComplianceAsync_003Eb__4_003Ed._003C_003E4__this = CS_0024_003C_003E8__locals12;1401							_003C_003CCheckOrgAssignmentComplianceAsync_003Eb__4_003Ed._003C_003E1__state = -1;1402							((AsyncTaskMethodBuilder)(ref _003C_003CCheckOrgAssignmentComplianceAsync_003Eb__4_003Ed._003C_003Et__builder)).Start<_003C_003Ec__DisplayClass17_1._003C_003CCheckOrgAssignmentComplianceAsync_003Eb__4_003Ed>(ref _003C_003CCheckOrgAssignmentComplianceAsync_003Eb__4_003Ed);1403							return ((AsyncTaskMethodBuilder)(ref _003C_003CCheckOrgAssignmentComplianceAsync_003Eb__4_003Ed._003C_003Et__builder)).Task;1404						}));1405					}1406				}1407				finally1408				{1409					if (num < 0)1410					{1411						((System.IDisposable)result2)?.Dispose();1412					}1413				}1414				_003C_003E7__wrap2 = _003CdelayedActions_003E5__2.GetEnumerator();1415				goto IL_0310;1416				IL_0310:1417				try1418				{1419					if (num != 1)1420					{1421						goto IL_0388;1422					}1423					ConfiguredTaskAwaiter val2 = _003C_003Eu__2;1424					_003C_003Eu__2 = default(ConfiguredTaskAwaiter);1425					num = (_003C_003E1__state = -1);1426					goto IL_0381;1427					IL_0381:1428					((ConfiguredTaskAwaiter)(ref val2)).GetResult();1429					goto IL_0388;1430					IL_0388:1431					if (_003C_003E7__wrap2.MoveNext())1432					{1433						ConfiguredTaskAwaitable val3 = _003C_003E7__wrap2.Current.Invoke().ConfigureAwait(false);1434						val2 = ((ConfiguredTaskAwaitable)(ref val3)).GetAwaiter();1435						if (!((ConfiguredTaskAwaiter)(ref val2)).IsCompleted)1436						{1437							num = (_003C_003E1__state = 1);1438							_003C_003Eu__2 = val2;1439							_003C_003Et__builder.AwaitUnsafeOnCompleted<ConfiguredTaskAwaiter, _003CCheckOrgAssignmentComplianceAsync_003Ed__17>(ref val2, ref this);1440							return;1441						}1442						goto IL_0381;1443					}1444				}1445				finally1446				{1447					if (num < 0)1448					{1449						((System.IDisposable)_003C_003E7__wrap2/*cast due to .constrained prefix*/).Dispose();1450					}1451				}1452				_003C_003E7__wrap2 = default(Enumerator<Func<System.Threading.Tasks.Task>>);1453				_003CdelayedActions_003E5__2 = null;1454				goto IL_03c0;1455				end_IL_000e:;1456			}1457			catch (System.Exception exception)1458			{1459				_003C_003E1__state = -2;1460				_003C_003E8__1 = null;1461				_003C_003Et__builder.SetException(exception);1462				return;1463			}1464			_003C_003E1__state = -2;1465			_003C_003E8__1 = null;1466			_003C_003Et__builder.SetResult(result);1467		}14681469		[DebuggerHidden]1470		private void SetStateMachine(IAsyncStateMachine stateMachine)1471		{1472			_003C_003Et__builder.SetStateMachine(stateMachine);1473		}1474	}14751476	[StructLayout((LayoutKind)3)]1477	[CompilerGenerated]1478	private struct _003CCheckRoleAssignmentsAsync_003Ed__14 : IAsyncStateMachine1479	{1480		public int _003C_003E1__state;14811482		public AsyncTaskMethodBuilder<System.Collections.Generic.IEnumerable<ComplianceViolation>> _003C_003Et__builder;14831484		public CartComplianceCheck _003C_003E4__this;14851486		public ISession session;14871488		public OrderInfo orderInfo;14891490		public bool hasRiskIndex;14911492		public CancellationToken ct;14931494		public bool hasEset;14951496		private ConfiguredTaskAwaiter<System.Collections.Generic.IEnumerable<ComplianceViolation>> _003C_003Eu__1;14971498		private System.Collections.Generic.IEnumerable<ComplianceViolation> _003C_003E7__wrap1;14991500		private void MoveNext()1501		{1502			//IL_0075: Unknown result type (might be due to invalid IL or missing references)1503			//IL_007a: Unknown result type (might be due to invalid IL or missing references)1504			//IL_0082: Unknown result type (might be due to invalid IL or missing references)1505			//IL_0105: Unknown result type (might be due to invalid IL or missing references)1506			//IL_010a: Unknown result type (might be due to invalid IL or missing references)1507			//IL_0112: Unknown result type (might be due to invalid IL or missing references)1508			//IL_002c: Unknown result type (might be due to invalid IL or missing references)1509			//IL_0037: Unknown result type (might be due to invalid IL or missing references)1510			//IL_003c: Unknown result type (might be due to invalid IL or missing references)1511			//IL_0040: Unknown result type (might be due to invalid IL or missing references)1512			//IL_0045: Unknown result type (might be due to invalid IL or missing references)1513			//IL_00bf: Unknown result type (might be due to invalid IL or missing references)1514			//IL_00ca: Unknown result type (might be due to invalid IL or missing references)1515			//IL_00cf: Unknown result type (might be due to invalid IL or missing references)1516			//IL_00d3: Unknown result type (might be due to invalid IL or missing references)1517			//IL_00d8: Unknown result type (might be due to invalid IL or missing references)1518			//IL_005a: Unknown result type (might be due to invalid IL or missing references)1519			//IL_005c: Unknown result type (might be due to invalid IL or missing references)1520			//IL_00ed: Unknown result type (might be due to invalid IL or missing references)1521			//IL_00ef: Unknown result type (might be due to invalid IL or missing references)1522			int num = _003C_003E1__state;1523			CartComplianceCheck cartComplianceCheck = _003C_003E4__this;1524			System.Collections.Generic.IEnumerable<ComplianceViolation> result2;1525			try1526			{1527				ConfiguredTaskAwaiter<System.Collections.Generic.IEnumerable<ComplianceViolation>> val;1528				if (num != 0)1529				{1530					if (num == 1)1531					{1532						val = _003C_003Eu__1;1533						_003C_003Eu__1 = default(ConfiguredTaskAwaiter<System.Collections.Generic.IEnumerable<ComplianceViolation>>);1534						num = (_003C_003E1__state = -1);1535						goto IL_0121;1536					}1537					val = cartComplianceCheck.CheckOrgAssignmentComplianceAsync(session, orderInfo, hasRiskIndex, ct).ConfigureAwait(false).GetAwaiter();1538					if (!val.IsCompleted)1539					{1540						num = (_003C_003E1__state = 0);1541						_003C_003Eu__1 = val;1542						_003C_003Et__builder.AwaitUnsafeOnCompleted<ConfiguredTaskAwaiter<System.Collections.Generic.IEnumerable<ComplianceViolation>>, _003CCheckRoleAssignmentsAsync_003Ed__14>(ref val, ref this);1543						return;1544					}1545				}1546				else1547				{1548					val = _003C_003Eu__1;1549					_003C_003Eu__1 = default(ConfiguredTaskAwaiter<System.Collections.Generic.IEnumerable<ComplianceViolation>>);1550					num = (_003C_003E1__state = -1);1551				}1552				System.Collections.Generic.IEnumerable<ComplianceViolation> enumerable = val.GetResult();1553				if (hasEset)1554				{1555					_003C_003E7__wrap1 = enumerable;1556					val = cartComplianceCheck.CheckEsetAssignmentComplianceAsync(session, orderInfo, hasRiskIndex, ct).ConfigureAwait(false).GetAwaiter();1557					if (!val.IsCompleted)1558					{1559						num = (_003C_003E1__state = 1);1560						_003C_003Eu__1 = val;1561						_003C_003Et__builder.AwaitUnsafeOnCompleted<ConfiguredTaskAwaiter<System.Collections.Generic.IEnumerable<ComplianceViolation>>, _003CCheckRoleAssignmentsAsync_003Ed__14>(ref val, ref this);1562						return;1563					}1564					goto IL_0121;1565				}1566				goto IL_013f;1567				IL_0121:1568				System.Collections.Generic.IEnumerable<ComplianceViolation> result = val.GetResult();1569				enumerable = Enumerable.Concat<ComplianceViolation>(_003C_003E7__wrap1, result);1570				_003C_003E7__wrap1 = null;1571				goto IL_013f;1572				IL_013f:1573				result2 = enumerable;1574			}1575			catch (System.Exception exception)1576			{1577				_003C_003E1__state = -2;1578				_003C_003Et__builder.SetException(exception);1579				return;1580			}1581			_003C_003E1__state = -2;1582			_003C_003Et__builder.SetResult(result2);1583		}15841585		[DebuggerHidden]1586		private void SetStateMachine(IAsyncStateMachine stateMachine)1587		{1588			_003C_003Et__builder.SetStateMachine(stateMachine);1589		}1590	}15911592	[StructLayout((LayoutKind)3)]1593	[CompilerGenerated]1594	private struct _003CComplianceCheckForPwoAsync_003Ed__21 : IAsyncStateMachine1595	{1596		public int _003C_003E1__state;15971598		public AsyncTaskMethodBuilder<System.Collections.Generic.IEnumerable<ComplianceViolation>> _003C_003Et__builder;15991600		public CartComplianceCheck _003C_003E4__this;16011602		public ISession session;16031604		public CancellationToken ct;16051606		public IEntity sPwo;16071608		private _003C_003Ec__DisplayClass21_0 _003C_003E8__1;16091610		public OrderInfo orderInfo;16111612		private _003C_003Ec__DisplayClass21_1 _003C_003E8__2;16131614		public bool hasRiskIndex;16151616		private List<ComplianceViolation> _003Clist_003E5__2;16171618		private CCSPwO[] _003CccsPwos_003E5__3;16191620		private ConfiguredValueTaskAwaiter<object> _003C_003Eu__1;16211622		private System.Collections.Generic.IEnumerator<CCSPwO> _003C_003E7__wrap3;16231624		private string _003CuidShoppingCartItem_003E5__5;16251626		private bool _003CisNoInherit_003E5__6;16271628		private IEntity _003Crule_003E5__7;16291630		private ContributingEntitlement[] _003Ccontributing_003E5__8;16311632		private ContributingEntitlement[] _003Csources_003E5__9;16331634		private string _003Cdescription_003E5__10;16351636		private double _003CriskIndex_003E5__11;16371638		private double _003CriskIndexReduced_003E5__12;16391640		private string _003CruleNumber_003E5__13;16411642		private ConfiguredTaskAwaiter<bool> _003C_003Eu__2;16431644		private ConfiguredTaskAwaiter<IEntity> _003C_003Eu__3;16451646		private ConfiguredTaskAwaiter<ContributingEntitlement[]> _003C_003Eu__4;16471648		private ConfiguredValueTaskAwaiter<string> _003C_003Eu__5;16491650		private ConfiguredValueTaskAwaiter<double> _003C_003Eu__6;16511652		private List<ComplianceViolation> _003C_003E7__wrap13;16531654		private ComplianceViolation _003C_003E7__wrap14;16551656		private ComplianceViolation _003C_003E7__wrap15;16571658		private ComplianceViolation _003C_003E7__wrap16;16591660		private ConfiguredTaskAwaiter<string> _003C_003Eu__7;16611662		private void MoveNext()1663		{1664			//IL_00e4: Unknown result type (might be due to invalid IL or missing references)1665			//IL_00e9: Unknown result type (might be due to invalid IL or missing references)1666			//IL_00f1: Unknown result type (might be due to invalid IL or missing references)1667			//IL_0051: Unknown result type (might be due to invalid IL or missing references)1668			//IL_0056: Unknown result type (might be due to invalid IL or missing references)1669			//IL_0097: Unknown result type (might be due to invalid IL or missing references)1670			//IL_00a6: Unknown result type (might be due to invalid IL or missing references)1671			//IL_00ab: Unknown result type (might be due to invalid IL or missing references)1672			//IL_00af: Unknown result type (might be due to invalid IL or missing references)1673			//IL_00b4: Unknown result type (might be due to invalid IL or missing references)1674			//IL_00c9: Unknown result type (might be due to invalid IL or missing references)1675			//IL_00cb: Unknown result type (might be due to invalid IL or missing references)1676			//IL_029d: Unknown result type (might be due to invalid IL or missing references)1677			//IL_02a2: Unknown result type (might be due to invalid IL or missing references)1678			//IL_02aa: Unknown result type (might be due to invalid IL or missing references)1679			//IL_036d: Unknown result type (might be due to invalid IL or missing references)1680			//IL_0372: Unknown result type (might be due to invalid IL or missing references)1681			//IL_037a: Unknown result type (might be due to invalid IL or missing references)1682			//IL_0507: Unknown result type (might be due to invalid IL or missing references)1683			//IL_050c: Unknown result type (might be due to invalid IL or missing references)1684			//IL_0514: Unknown result type (might be due to invalid IL or missing references)1685			//IL_05de: Unknown result type (might be due to invalid IL or missing references)1686			//IL_05e3: Unknown result type (might be due to invalid IL or missing references)1687			//IL_05eb: Unknown result type (might be due to invalid IL or missing references)1688			//IL_0679: Unknown result type (might be due to invalid IL or missing references)1689			//IL_067e: Unknown result type (might be due to invalid IL or missing references)1690			//IL_0686: Unknown result type (might be due to invalid IL or missing references)1691			//IL_0721: Unknown result type (might be due to invalid IL or missing references)1692			//IL_0726: Unknown result type (might be due to invalid IL or missing references)1693			//IL_072e: Unknown result type (might be due to invalid IL or missing references)1694			//IL_07be: Unknown result type (might be due to invalid IL or missing references)1695			//IL_07c3: Unknown result type (might be due to invalid IL or missing references)1696			//IL_07cb: Unknown result type (might be due to invalid IL or missing references)1697			//IL_08ba: Unknown result type (might be due to invalid IL or missing references)1698			//IL_08bf: Unknown result type (might be due to invalid IL or missing references)1699			//IL_08c7: Unknown result type (might be due to invalid IL or missing references)1700			//IL_09e6: Unknown result type (might be due to invalid IL or missing references)1701			//IL_09eb: Unknown result type (might be due to invalid IL or missing references)1702			//IL_09f3: Unknown result type (might be due to invalid IL or missing references)1703			//IL_0591: Unknown result type (might be due to invalid IL or missing references)1704			//IL_05a0: Unknown result type (might be due to invalid IL or missing references)1705			//IL_05a5: Unknown result type (might be due to invalid IL or missing references)1706			//IL_05a9: Unknown result type (might be due to invalid IL or missing references)1707			//IL_05ae: Unknown result type (might be due to invalid IL or missing references)1708			//IL_062c: Unknown result type (might be due to invalid IL or missing references)1709			//IL_063b: Unknown result type (might be due to invalid IL or missing references)1710			//IL_0640: Unknown result type (might be due to invalid IL or missing references)1711			//IL_0644: Unknown result type (might be due to invalid IL or missing references)1712			//IL_0649: Unknown result type (might be due to invalid IL or missing references)1713			//IL_0771: Unknown result type (might be due to invalid IL or missing references)1714			//IL_0780: Unknown result type (might be due to invalid IL or missing references)1715			//IL_0785: Unknown result type (might be due to invalid IL or missing references)1716			//IL_0789: Unknown result type (might be due to invalid IL or missing references)1717			//IL_078e: Unknown result type (might be due to invalid IL or missing references)1718			//IL_0324: Unknown result type (might be due to invalid IL or missing references)1719			//IL_032f: Unknown result type (might be due to invalid IL or missing references)1720			//IL_0334: Unknown result type (might be due to invalid IL or missing references)1721			//IL_0338: Unknown result type (might be due to invalid IL or missing references)1722			//IL_033d: Unknown result type (might be due to invalid IL or missing references)1723			//IL_05c3: Unknown result type (might be due to invalid IL or missing references)1724			//IL_05c5: Unknown result type (might be due to invalid IL or missing references)1725			//IL_065e: Unknown result type (might be due to invalid IL or missing references)1726			//IL_0660: Unknown result type (might be due to invalid IL or missing references)1727			//IL_06d4: Unknown result type (might be due to invalid IL or missing references)1728			//IL_06e3: Unknown result type (might be due to invalid IL or missing references)1729			//IL_06e8: Unknown result type (might be due to invalid IL or missing references)1730			//IL_06ec: Unknown result type (might be due to invalid IL or missing references)1731			//IL_06f1: Unknown result type (might be due to invalid IL or missing references)1732			//IL_07a3: Unknown result type (might be due to invalid IL or missing references)1733			//IL_07a5: Unknown result type (might be due to invalid IL or missing references)1734			//IL_099c: Unknown result type (might be due to invalid IL or missing references)1735			//IL_09a7: Unknown result type (might be due to invalid IL or missing references)1736			//IL_09ac: Unknown result type (might be due to invalid IL or missing references)1737			//IL_09b0: Unknown result type (might be due to invalid IL or missing references)1738			//IL_09b5: Unknown result type (might be due to invalid IL or missing references)1739			//IL_0352: Unknown result type (might be due to invalid IL or missing references)1740			//IL_0354: Unknown result type (might be due to invalid IL or missing references)1741			//IL_0871: Unknown result type (might be due to invalid IL or missing references)1742			//IL_087c: Unknown result type (might be due to invalid IL or missing references)1743			//IL_0881: Unknown result type (might be due to invalid IL or missing references)1744			//IL_0885: Unknown result type (might be due to invalid IL or missing references)1745			//IL_088a: Unknown result type (might be due to invalid IL or missing references)1746			//IL_0706: Unknown result type (might be due to invalid IL or missing references)1747			//IL_0708: Unknown result type (might be due to invalid IL or missing references)1748			//IL_09cb: Unknown result type (might be due to invalid IL or missing references)1749			//IL_09cd: Unknown result type (might be due to invalid IL or missing references)1750			//IL_089f: Unknown result type (might be due to invalid IL or missing references)1751			//IL_08a1: Unknown result type (might be due to invalid IL or missing references)1752			//IL_0254: Unknown result type (might be due to invalid IL or missing references)1753			//IL_025f: Unknown result type (might be due to invalid IL or missing references)1754			//IL_0264: Unknown result type (might be due to invalid IL or missing references)1755			//IL_0268: Unknown result type (might be due to invalid IL or missing references)1756			//IL_026d: Unknown result type (might be due to invalid IL or missing references)1757			//IL_0282: Unknown result type (might be due to invalid IL or missing references)1758			//IL_0284: Unknown result type (might be due to invalid IL or missing references)1759			//IL_04be: Unknown result type (might be due to invalid IL or missing references)1760			//IL_04c9: Unknown result type (might be due to invalid IL or missing references)1761			//IL_04ce: Unknown result type (might be due to invalid IL or missing references)1762			//IL_04d2: Unknown result type (might be due to invalid IL or missing references)1763			//IL_04d7: Unknown result type (might be due to invalid IL or missing references)1764			//IL_04ec: Unknown result type (might be due to invalid IL or missing references)1765			//IL_04ee: Unknown result type (might be due to invalid IL or missing references)1766			int num = _003C_003E1__state;1767			CartComplianceCheck cartComplianceCheck = _003C_003E4__this;1768			System.Collections.Generic.IEnumerable<ComplianceViolation> result5;1769			try1770			{1771				ConfiguredValueTaskAwaiter<object> val;1772				if (num != 0)1773				{1774					if ((uint)(num - 1) <= 8u)1775					{1776						goto IL_015b;1777					}1778					_003C_003E8__1 = new _003C_003Ec__DisplayClass21_0();1779					_003C_003E8__1._003C_003E4__this = _003C_003E4__this;1780					_003C_003E8__1.session = session;1781					_003C_003E8__1.ct = ct;1782					_003Clist_003E5__2 = new List<ComplianceViolation>();1783					_003C_003E8__1.uidPwo = sPwo.GetValue("UID_PersonWantsOrg").String;1784					val = sPwo.CallFunctionAsync("ComplianceCheckSimple", _003C_003E8__1.ct).ConfigureAwait(false).GetAwaiter();1785					if (!val.IsCompleted)1786					{1787						num = (_003C_003E1__state = 0);1788						_003C_003Eu__1 = val;1789						_003C_003Et__builder.AwaitUnsafeOnCompleted<ConfiguredValueTaskAwaiter<object>, _003CComplianceCheckForPwoAsync_003Ed__21>(ref val, ref this);1790						return;1791					}1792				}1793				else1794				{1795					val = _003C_003Eu__1;1796					_003C_003Eu__1 = default(ConfiguredValueTaskAwaiter<object>);1797					num = (_003C_003E1__state = -1);1798				}1799				object result = val.GetResult();1800				_003CccsPwos_003E5__3 = (CCSPwO[])result;1801				_003C_003E7__wrap3 = Enumerable.Where<CCSPwO>((System.Collections.Generic.IEnumerable<CCSPwO>)_003CccsPwos_003E5__3, (Func<CCSPwO, bool>)((CCSPwO ccsPwo) => ccsPwo.IsNewObject && string.Equals(ccsPwo.UID_PersonWantsOrg, _003C_003E8__1.uidPwo, (StringComparison)3))).GetEnumerator();1802				goto IL_015b;1803				IL_015b:1804				try1805				{1806					ConfiguredTaskAwaiter<bool> val7;1807					ConfiguredTaskAwaiter<IEntity> val6;1808					ConfiguredTaskAwaiter<ContributingEntitlement[]> val5;1809					ConfiguredValueTaskAwaiter<double> val4;1810					ConfiguredValueTaskAwaiter<string> val3;1811					ConfiguredTaskAwaiter<string> val2;1812					bool flag;1813					IEntity entity;1814					double num2;1815					ContributingEntitlement[] result2;1816					string text;1817					string result4;1818					string result3;1819					switch (num)1820					{1821					case 1:1822						val7 = _003C_003Eu__2;1823						_003C_003Eu__2 = default(ConfiguredTaskAwaiter<bool>);1824						num = (_003C_003E1__state = -1);1825						goto IL_02b9;1826					case 2:1827						val6 = _003C_003Eu__3;1828						_003C_003Eu__3 = default(ConfiguredTaskAwaiter<IEntity>);1829						num = (_003C_003E1__state = -1);1830						goto IL_0389;1831					case 3:1832						val5 = _003C_003Eu__4;1833						_003C_003Eu__4 = default(ConfiguredTaskAwaiter<ContributingEntitlement[]>);1834						num = (_003C_003E1__state = -1);1835						goto IL_0523;1836					case 4:1837						val3 = _003C_003Eu__5;1838						_003C_003Eu__5 = default(ConfiguredValueTaskAwaiter<string>);1839						num = (_003C_003E1
…