 	assert obj.type is OBJECT, "stringObject: type must be an object"
 
 	if getByType(obj.body, ID).length > 0
-		ids[obj.id] = true
+		if MODIFIERS_NAMES[obj.name]
+			extensions[obj.id] = true
+		else
+			ids[obj.id] = true
 
 	rendererCtor = Renderer[obj.name.split('.')[0]]
 	isLocal = rendererCtor?
 	decl = if isLocal then "new #{obj.name}" else "#{obj.name}"
-	r = "var #{obj.id} = ids.#{obj.id} = #{decl}();\n"
+	if MODIFIERS_NAMES[obj.name]
+		r = "var #{obj.id} = extensions.#{obj.id} = #{decl}();\n"
+	else
+		r = "var #{obj.id} = ids.#{obj.id} = #{decl}();\n"
 	r += "#{obj.id}._id = '#{obj.id}';\n"
 	r += "#{obj.id}._isReady = false;\n"
 

		waitsCode = ''
		r += stringFile elem, isView
		if objectIndex > 0 and elem.autoId
			codes._neftMain += r
		else
			r += "var mainItem = #{elem.id};\n"
			if objectIndex is 0


stringFile = (file, isView=false) ->
	ids = {}
	extensions = {}

	code = 'var ids = {};\n'
	code += 'var extensions = {};\n'
	if isView
		code += stringViewObjectFull file
	else
