Snake constructor