You can buy this project and download/modify it how often you want.
<path> getPathSegList 'onload' <path> getPathSegList() in 'onload' segment provider path with insertItemBefore inserted seg replaceItem replaced seg initialize/appendItem intialized seg appended seg new Path path with