Mostly rewritten for easier use, no loadless func
bugfix