Yes, I have probably overcomplicated it, yes, it may be confusing, but no, I don't care. Use this in your projects!