Further steps towards reimplementing functionality