#self solving