refactor, move to repo package, extend GenericsScriptApi
fix header