fix marker creation and use datalayer