load with absolute path
added static create()