diff --git a/skeletons/constr_SEQUENCE_oer.c b/skeletons/constr_SEQUENCE_oer.c
index 5fb697c..84b0db9 100644
--- a/skeletons/constr_SEQUENCE_oer.c
+++ b/skeletons/constr_SEQUENCE_oer.c
@@ -81,7 +81,6 @@
 
     (void)opt_codec_ctx;
     (void)constraints;
-    (void)specs;
 
     /*
      * Create the target structure if it is not present already.
@@ -197,9 +196,33 @@
                 memb_ptr2 = &memb_tmpptr; /* Ensure this & remains in scope! */
             }
 
-            rval = elm->type->oer_decoder(opt_codec_ctx, elm->type,
-                                          elm->oer_constraints, memb_ptr2, ptr,
-                                          size);
+            if((elm->flags & ATF_OPEN_TYPE) && elm->type_selector) {
+                asn_TYPE_descriptor_t *et = elm->type_selector(td, st);
+                ssize_t ot_ret;
+                if(!et) {
+                    ASN__DECODE_FAILED;
+                }
+                ot_ret = oer_open_type_get(opt_codec_ctx, et, NULL, memb_ptr2,
+                                           ptr, size);
+                switch(ot_ret) {
+                case -1:
+                    rval.code = RC_FAIL;
+                    rval.consumed = 0;
+                    break;
+                case 0:
+                    rval.code = RC_WMORE;
+                    rval.consumed = 1;
+                    break;
+                default:
+                    rval.code = RC_OK;
+                    rval.consumed = ot_ret;
+                    break;
+                }
+            } else {
+                rval = elm->type->oer_decoder(opt_codec_ctx, elm->type,
+                                              elm->oer_constraints, memb_ptr2,
+                                              ptr, size);
+            }
             switch(rval.code) {
             case RC_OK:
                 ADVANCE(rval.consumed);
