U4IDI3M3RBNIQIY43PFKMPBHVCKG37FI5ARJ4GOKY7KKCD2DILWAC NH72X2CBW6LZIU354XZFSV7TSVZFDVESLCUSAIUZGDMSQMU4BQYAC 5UMVJBOXMEKW2H5JG7T4APWP4QSLSPQSXW6RJBZS6FQQ3BG2XXQAC DTKQAPJB6JCJZYLQ4MOFA5QHDCCIQ3KG5ED6PVF5PGEH33YSJFBAC FEMASUBNU32NSG4DNXZX54CGCA57PVRGYO46L3A6F2EJ4BCSJ3SAC L2PGFWL2UYCKFV7XQTNLUESMHCP2TBNE4IWFBDU4E4UNBNEMSKXAC OHAARXLBTFOIV5FOTY7IDMOIAE275CKXCE6XQMWV3EC63YCSMIWAC TUDUMVD5MTJJJGVYVOCALOOKOUYNB7LOFJRCYCZDVGN536JAO2OQC QU4IBVXLLNKNFHT25ZP23INGTVGISDTTLPUBD5S7PCDBC3ZXF3QAC KOOPA77MHDMNHAKH7YXUD2POVQCT3R2HHDHEFBW3G7MVM7QJQVYAC T3TZRPPAIA24I3YL3JFB4XEAYCWU3HJAJUCF7NNIFMP4I5X4SM5QC CWFPG3JOFDQGDQEN56PEE6FLJXF665S4BEOKMYX7V5KGXM4ACIHAC constexpr vect(const array<T, D> &arr) : elts(arr) {}constexpr vect(initializer_list<T> arr)
/*CCTK_ATTRIBUTE_ALWAYS_INLINE*/ constexpr vect(const array<T, D> &arr): elts(arr) {}/*CCTK_ATTRIBUTE_ALWAYS_INLINE*/ constexpr vect(initializer_list<T> arr)
constexpr const T &operator[](int d) const { return elts[d]; }T &operator[](int d) { return elts[d]; }
/*CCTK_ATTRIBUTE_ALWAYS_INLINE*/ constexpr const T &operator[](int d) const {return elts[d];}/*CCTK_ATTRIBUTE_ALWAYS_INLINE*/ T &operator[](int d) { return elts[d]; }
constexpr Loop::vect<T, D> max(const Loop::vect<T, D> &x,const Loop::vect<T, D> &y) {
/*CCTK_ATTRIBUTE_ALWAYS_INLINE*/ constexpr Loop::vect<T, D>abs(const Loop::vect<T, D> &x) {Loop::vect<T, D> r;for (int d = 0; d < D; ++d)r.elts[d] = abs(x.elts[d]);return r;}template <typename T, int D>/*CCTK_ATTRIBUTE_ALWAYS_INLINE*/ constexpr Loop::vect<T, D>max(const Loop::vect<T, D> &x, const Loop::vect<T, D> &y) {