   getValue: ()->
     @serialize()
 
+  postInitialize: ()->
+    @skipLogicCollection = new XLF.SkipLogicCollection([], rowDetail: @)
+    @parse()
+
   serialize: ()->
     # @hidden = false
     # note: reimplement "hidden" if response is invalid
     @skipLogicCollection.serialize()
 
   parse: ()->
-    ###
-    Ideally this could go somewhere else that's called after initialize
-    ###
-    unless @skipLogicCollection
-      @skipLogicCollection = new XLF.SkipLogicCollection([], rowDetail: @)
-      @skipLogicCollection.importString(@get('value') || '')
+    @skipLogicCollection.importString(@get('value') || '')
 
 @XLF.RowDetailMixins =
   relevant: SkipLogicDetailMixin

      vals2set.value = valOrObj
    @set(vals2set)
    @_order = XLF.columnOrder(@key)

  getSurvey: ()-> @parentRow.getSurvey()

  initialize: ()->
    if @get("_hideUnlessChanged")
      @hidden = true

        @hidden = @get("value") is @_oValue

    @on "change:value", (rd, val, ctxt)=>
      @parentRow.trigger "change", @key, val, ctxt
    if @key is "type"
      @on "change:list", (rd, val, ctxt)=>
