Added more universal methods and removed redundant code