* implements more stuff