[DEV] add engine and separate element property