Added dot product method