jump and arm algorithms