Attempt on implementing #12