changed back to the more reasonable solution (static methods were a desperate try to fix the performance thing, which still isnt fixed)