^ move out static functions in framework class