What is the XML rule for Group:Member Modify transformation to ServiceNow sys_user_grmember?

<rule>    <description>Group:Member Modify transformation to ServiceNow sys_user_grmember</description>    <comment xml:space="preserve">Group attributes in ServiceNow is distributed across two classes namely sys_user_group(name, desc) and sys_user_grmember (group, user).  The class sys_user_group contains group related attributes and class sys_user_grmember contains group-user membership attributes. This rule distributes the Group modify event accordingly accross two classes.</comment>    <conditions>        <and>            <if-operation mode="nocase" op="equal">modify</if-operation>            <if-class-name mode="nocase" op="equal">sys_user_group</if-class-name>          </and>      </conditions>    <actions>        <do-if>            <arg-conditions>                <and>                    <if-op-attr name="urn:ietf:params:scim:schemas:core:2.0:Group:members.$ref" op="changing"/>                  </and>              </arg-conditions>            <arg-actions>                <do-set-local-variable name="groupAssoc" scope="policy">                    <arg-string>                        <token-association/>                      </arg-string>                  </do-set-local-variable>                <do-if>                    <arg-conditions>                        <and>                            <if-xpath op="true">./modify-attr[@attr-name='urn:ietf:params:scim:schemas:core:2.0:Group:members.$ref']/remove-all-values</if-xpath>                          </and>                      </arg-conditions>                    <arg-actions>                        <do-delete-dest-object class-name="sys_user_grmember" when="before">                            <arg-association>                                <token-text xml:space="preserve">group$</token-text>                                <token-local-variable name="groupAssoc"/>                              </arg-association>                          </do-delete-dest-object>                      </arg-actions>                    <arg-actions/>                  </do-if>                <do-for-each>                    <arg-node-set>                        <token-xpath expression="./modify-attr[@attr-name='urn:ietf:params:scim:schemas:core:2.0:Group:members.$ref']/add-value/value[@association-ref]"/>                      </arg-node-set>                    <arg-actions>                        <do-set-local-variable name="userAssoc" scope="policy">                            <arg-string>                                <token-xpath expression="$current-node/@association-ref"/>                              </arg-string>                          </do-set-local-variable>                        <do-set-local-variable name="dest-dn" scope="policy">                            <arg-string>                                <token-text xml:space="preserve">/</token-text>                                <token-local-variable name="groupAssoc"/>                                <token-text xml:space="preserve">$</token-text>                                <token-local-variable name="userAssoc"/>                              </arg-string>                          </do-set-local-variable>                        <do-add-dest-object class-name="sys_user_grmember" when="after">                            <arg-dn>                                <token-local-variable name="dest-dn"/>                              </arg-dn>                          </do-add-dest-object>                        <do-add-dest-attr-value class-name="sys_user_grmember" name="group" when="after">                            <arg-dn>                                <token-local-variable name="dest-dn"/>                              </arg-dn>                            <arg-value type="string">                                <token-local-variable name="groupAssoc"/>                              </arg-value>                          </do-add-dest-attr-value>                        <do-add-dest-attr-value class-name="sys_user_grmember" name="user" when="after">                            <arg-dn>                                <token-local-variable name="dest-dn"/>                              </arg-dn>                            <arg-value type="string">                                <token-local-variable name="userAssoc"/>                              </arg-value>                          </do-add-dest-attr-value>                        <do-set-xml-attr disabled="true" expression="$current-node" name="association" notrace="true">                            <arg-string>                                <token-xpath expression="$current-node/@association-ref"/>                              </arg-string>                          </do-set-xml-attr>                        <do-set-xml-attr disabled="true" expression="$current-node" name="type" notrace="true">                            <arg-string>                                <token-text xml:space="preserve">{dn}</token-text>                              </arg-string>                          </do-set-xml-attr>                      </arg-actions>                  </do-for-each>                <do-for-each>                    <arg-node-set>                        <token-xpath expression="./modify-attr[@attr-name='urn:ietf:params:scim:schemas:core:2.0:Group:members.$ref']/remove-value/value[@association-ref]"/>                      </arg-node-set>                    <arg-actions>                        <do-set-local-variable name="userAssoc" scope="policy">                            <arg-string>                                <token-xpath expression="$current-node/@association-ref"/>                              </arg-string>                          </do-set-local-variable>                        <do-set-local-variable name="groupMemberObj" scope="policy">                            <arg-node-set>                                <token-query class-name="sys_user_grmember">                                    <arg-match-attr name="group">                                        <arg-value type="string">                                            <token-local-variable name="groupAssoc"/>                                          </arg-value>                                      </arg-match-attr>                                    <arg-match-attr name="user">                                        <arg-value type="string">                                            <token-local-variable name="userAssoc"/>                                          </arg-value>                                      </arg-match-attr>                                  </token-query>                              </arg-node-set>                          </do-set-local-variable>                        <do-for-each>                            <arg-node-set>                                <token-local-variable name="groupMemberObj"/>                              </arg-node-set>                            <arg-actions>                                <do-delete-dest-object class-name="sys_user_grmember">                                    <arg-association>                                        <token-xpath expression="$current-node/association/text()"/>                                      </arg-association>                                  </do-delete-dest-object>                              </arg-actions>                          </do-for-each>                      </arg-actions>                  </do-for-each>                <do-strip-op-attr name="urn:ietf:params:scim:schemas:core:2.0:Group:members.$ref"/>              </arg-actions>            <arg-actions/>          </do-if>      </actions>  </rule>